2026-01-21T09:00:11.619 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:00:21.634 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:00:21.652 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T08:59:39.679220
2026-01-21T09:00:21.652 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:00:21.652 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:00:21.652 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:00:30.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:00:40.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:00:50.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:01:00.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:01:10.719 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:01:20.735 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:01:20.754 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:00:40.413980
2026-01-21T09:01:20.754 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:01:20.754 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:01:20.755 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:01:29.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:01:39.781 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:01:49.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:01:59.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:02:09.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:02:19.840 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:02:19.856 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:01:44.078902
2026-01-21T09:02:19.857 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:02:19.857 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:02:19.857 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:02:28.870 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:02:38.886 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:02:48.900 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:02:58.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:03:08.929 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:03:18.943 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:03:18.946 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:02:50.098898
2026-01-21T09:03:18.946 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:03:18.946 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:03:18.946 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:03:27.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:03:37.973 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:03:47.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:03:58.001 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:04:08.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:04:18.030 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:04:18.046 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:03:50.564390
2026-01-21T09:04:18.047 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:04:18.047 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:04:18.047 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:04:27.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:04:37.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:04:47.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:04:57.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:05:07.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:05:17.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:05:17.154 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:04:51.748084
2026-01-21T09:05:17.154 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:05:17.154 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:05:17.154 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:05:26.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:05:36.182 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:05:46.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:05:56.210 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:06:06.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:06:16.237 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:06:16.262 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:05:52.551592
2026-01-21T09:06:16.262 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:06:16.262 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:06:16.262 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:06:25.277 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:06:35.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:06:45.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:06:55.325 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:07:05.339 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:07:15.356 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:07:15.379 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:06:52.919140
2026-01-21T09:07:15.379 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:07:15.379 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:07:15.379 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:07:24.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:07:34.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:07:44.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:07:54.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:08:04.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:08:14.472 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:08:14.496 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:07:55.333396
2026-01-21T09:08:14.497 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:08:14.497 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:08:14.497 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:08:23.511 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:08:33.526 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:08:43.541 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:08:53.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:09:03.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:09:13.584 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:09:13.607 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:08:56.156382
2026-01-21T09:09:13.607 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:09:13.607 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:09:13.607 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:09:22.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:09:32.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:09:42.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:09:52.668 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:10:02.682 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:10:12.698 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:10:12.720 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:09:56.309599
2026-01-21T09:10:12.720 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:10:12.721 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:10:12.721 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:10:21.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:10:31.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:10:41.763 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:10:51.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:11:01.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:11:11.804 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:11:11.826 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:10:57.841119
2026-01-21T09:11:11.826 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:11:11.826 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:11:11.826 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:11:20.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:11:30.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:11:40.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:11:50.886 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:12:00.900 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:12:10.914 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:12:10.934 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:11:58.415358
2026-01-21T09:12:10.934 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:12:10.934 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:12:10.934 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:12:19.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:12:29.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:12:39.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:12:49.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:13:00.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:13:10.023 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:13:10.043 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:13:01.984194
2026-01-21T09:13:10.043 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:13:10.043 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:13:10.043 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:13:19.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:13:29.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:13:39.082 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:13:49.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:13:59.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:14:09.128 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:14:09.144 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:14:02.136793
2026-01-21T09:14:09.144 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:14:09.144 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:14:09.144 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:14:18.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:14:28.174 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:14:38.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:14:48.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:14:58.217 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:15:08.231 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:15:08.233 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:15:04.737085
2026-01-21T09:15:08.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:15:08.234 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:15:08.234 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:15:17.247 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:15:27.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:15:37.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:15:47.291 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:15:57.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:16:07.321 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:16:07.343 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:16:07.057216
2026-01-21T09:16:07.344 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:16:07.344 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:16:07.344 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:16:16.358 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:16:26.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:16:36.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:16:46.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:16:56.420 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:17:06.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:17:06.456 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:16:07.057216
2026-01-21T09:17:06.456 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:17:06.456 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:17:06.456 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:17:15.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:17:25.485 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:17:35.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:17:45.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:17:55.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:18:05.544 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:18:05.567 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:17:07.213393
2026-01-21T09:18:05.567 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:18:05.567 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:18:05.567 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:18:14.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:18:24.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:18:34.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:18:44.630 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:18:54.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:19:04.660 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:19:04.682 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:18:08.402751
2026-01-21T09:19:04.683 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:19:04.683 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:19:04.683 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:19:13.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:19:23.712 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:19:33.728 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:19:43.744 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:19:53.759 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:20:03.773 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:20:03.797 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:19:10.038464
2026-01-21T09:20:03.797 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:20:03.797 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:20:03.797 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:20:12.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:20:22.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:20:32.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:20:42.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:20:52.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:21:02.885 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:21:02.902 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:20:14.199301
2026-01-21T09:21:02.903 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:21:02.903 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:21:02.903 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:21:11.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:21:21.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:21:31.973 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:21:41.988 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:21:52.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:22:02.017 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:22:02.037 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:21:24.340396
2026-01-21T09:22:02.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:22:02.038 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:22:02.038 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:22:11.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:22:21.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:22:31.078 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:22:41.093 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:22:51.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:23:01.121 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:23:01.143 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:22:24.524141
2026-01-21T09:23:01.144 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:23:01.144 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:23:01.144 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:23:10.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:23:20.172 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:23:30.187 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:23:40.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:23:50.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:24:00.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:24:00.251 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:23:33.942418
2026-01-21T09:24:00.252 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:24:00.252 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:24:00.252 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:24:09.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:24:19.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:24:29.291 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:24:39.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:24:49.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:24:59.336 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:24:59.353 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:24:34.402075
2026-01-21T09:24:59.354 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:24:59.354 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:24:59.354 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:25:08.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:25:18.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:25:28.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:25:38.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:25:48.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:25:58.440 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:25:58.465 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:25:34.565300
2026-01-21T09:25:58.465 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:25:58.465 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:25:58.465 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:26:07.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:26:17.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:26:27.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:26:37.523 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:26:47.537 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:26:57.551 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:26:57.575 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:26:35.606715
2026-01-21T09:26:57.575 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:26:57.575 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:26:57.576 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:27:06.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:27:16.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:27:26.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:27:36.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:27:46.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:27:56.665 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:27:56.668 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:27:37.454773
2026-01-21T09:27:56.668 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:27:56.668 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:27:56.668 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:28:05.680 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:28:15.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:28:25.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:28:35.723 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:28:45.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:28:55.751 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:28:55.754 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:28:38.453546
2026-01-21T09:28:55.754 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:28:55.754 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:28:55.754 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:29:04.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:29:14.781 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:29:24.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:29:34.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:29:44.824 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:29:54.839 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:29:54.841 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:29:39.875044
2026-01-21T09:29:54.842 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:29:54.842 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:29:54.842 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:30:03.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:30:13.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:30:23.883 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:30:33.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:30:43.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:30:53.924 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:30:53.926 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:30:42.885448
2026-01-21T09:30:53.927 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:30:53.927 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:30:53.927 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:31:02.940 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:31:12.956 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:31:22.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:31:32.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:31:42.999 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:31:53.013 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:31:53.032 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:31:46.775670
2026-01-21T09:31:53.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:31:53.032 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:31:53.032 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:32:02.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:32:12.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:32:22.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:32:32.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:32:42.103 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:32:52.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:32:52.121 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:31:46.775670
2026-01-21T09:32:52.121 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:32:52.121 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:32:52.121 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:33:01.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:33:11.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:33:21.162 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:33:31.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:33:41.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:33:51.205 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:33:51.207 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:32:56.923570
2026-01-21T09:33:51.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:33:51.207 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:33:51.208 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:34:00.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:34:10.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:34:20.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:34:30.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:34:40.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:34:50.291 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:34:50.293 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:34:06.937003
2026-01-21T09:34:50.294 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:34:50.294 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:34:50.294 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:34:59.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:35:09.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:35:19.338 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:35:29.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:35:39.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:35:49.382 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:35:49.383 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:35:07.869396
2026-01-21T09:35:49.383 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:35:49.383 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:35:49.383 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:35:58.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:36:08.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:36:18.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:36:28.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:36:38.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:36:48.473 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:36:48.475 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:36:08.917813
2026-01-21T09:36:48.476 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:36:48.476 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:36:48.476 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:36:57.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:37:07.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:37:17.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:37:27.533 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:37:37.548 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:37:47.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:37:47.565 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:37:12.570147
2026-01-21T09:37:47.565 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:37:47.565 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:37:47.565 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:37:56.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:38:06.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:38:16.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:38:26.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:38:36.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:38:46.653 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:38:46.655 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:38:17.616256
2026-01-21T09:38:46.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:38:46.656 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:38:46.656 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:38:55.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:39:05.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:39:15.701 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:39:25.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:39:35.730 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:39:45.744 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:39:45.747 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:39:19.494391
2026-01-21T09:39:45.747 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:39:45.747 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:39:45.747 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:39:54.761 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:40:04.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:40:14.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:40:24.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:40:34.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:40:44.833 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:40:44.836 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:40:20.809569
2026-01-21T09:40:44.836 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:40:44.836 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:40:44.836 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:40:53.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:41:03.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:41:13.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:41:23.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:41:33.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:41:43.918 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:41:43.920 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:41:30.947879
2026-01-21T09:41:43.920 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:41:43.920 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:41:43.920 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:41:52.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:42:02.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:42:12.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:42:22.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:42:32.989 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:42:43.003 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:42:43.006 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:42:33.512433
2026-01-21T09:42:43.006 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:42:43.006 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:42:43.007 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:42:52.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:43:02.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:43:12.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:43:22.056 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:43:32.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:43:42.086 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:43:42.088 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:43:36.709142
2026-01-21T09:43:42.089 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:43:42.089 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:43:42.089 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:43:51.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:44:01.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:44:11.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:44:21.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:44:31.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:44:41.179 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:44:41.202 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:43:36.709142
2026-01-21T09:44:41.202 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:44:41.203 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:44:41.203 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:44:50.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:45:00.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:45:10.243 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:45:20.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:45:30.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:45:40.283 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:45:40.285 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:43:36.709142
2026-01-21T09:45:40.286 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:45:40.286 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:45:40.286 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:45:49.298 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:45:59.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:46:09.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:46:19.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:46:29.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:46:39.368 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:46:39.370 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:43:36.709142
2026-01-21T09:46:39.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:46:39.371 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:46:39.371 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:46:48.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:46:58.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:47:08.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:47:18.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:47:28.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:47:38.455 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:47:38.457 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:47:01.707180
2026-01-21T09:47:38.457 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:47:38.457 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:47:38.458 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:47:47.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:47:57.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:48:07.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:48:17.517 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:48:27.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:48:37.545 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:48:37.547 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:48:10.040893
2026-01-21T09:48:37.547 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:48:37.547 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:48:37.548 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:48:46.561 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:48:56.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:49:06.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:49:16.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:49:26.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:49:36.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:49:36.641 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:49:20.179857
2026-01-21T09:49:36.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:49:36.641 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:49:36.641 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:49:45.654 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:49:55.669 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:50:05.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:50:15.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:50:25.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:50:35.729 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:50:35.731 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:49:20.179857
2026-01-21T09:50:35.732 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:50:35.732 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:50:35.732 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:50:44.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:50:54.759 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:51:04.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:51:14.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:51:24.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:51:34.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:51:34.821 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:51:25.376399
2026-01-21T09:51:34.821 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:51:34.822 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:51:34.822 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:51:43.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:51:53.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:52:03.863 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:52:13.878 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:52:23.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:52:33.903 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:52:33.905 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:52:25.510657
2026-01-21T09:52:33.906 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:52:33.906 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:52:33.906 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:52:42.919 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:52:52.935 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:53:02.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:53:12.966 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:53:22.979 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:53:32.993 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:53:32.995 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:53:25.640698
2026-01-21T09:53:32.995 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:53:32.995 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:53:32.996 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:53:42.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:53:52.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:54:02.035 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:54:12.049 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:54:22.064 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:54:32.078 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:54:32.080 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:54:25.781964
2026-01-21T09:54:32.081 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:54:32.081 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:54:32.081 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:54:41.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:54:51.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:55:01.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:55:11.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:55:21.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:55:31.170 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:55:31.172 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:55:25.923439
2026-01-21T09:55:31.173 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:55:31.173 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:55:31.173 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:55:40.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:55:50.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:56:00.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:56:10.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:56:20.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:56:30.255 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:56:30.257 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:56:26.064547
2026-01-21T09:56:30.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:56:30.258 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:56:30.258 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:56:39.272 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:56:49.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:56:59.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:57:09.317 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:57:19.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:57:29.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:57:29.344 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:57:26.206429
2026-01-21T09:57:29.391 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:57:29.392 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:57:29.392 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:57:38.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:57:48.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:57:58.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:58:08.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:58:18.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:58:28.480 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:58:28.482 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:58:26.347594
2026-01-21T09:58:28.483 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:58:28.483 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:58:28.483 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:58:37.497 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:58:47.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:58:57.527 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T09:59:07.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T09:59:17.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T09:59:27.573 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T09:59:27.575 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:59:26.486578
2026-01-21T09:59:27.575 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T09:59:27.575 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T09:59:27.575 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T09:59:36.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T09:59:46.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T09:59:56.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:00:06.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:00:16.649 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:00:26.663 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:00:26.665 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T09:59:26.486578
2026-01-21T10:00:26.665 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:00:26.665 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:00:26.665 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:00:35.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:00:45.690 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:00:55.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:01:05.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:01:15.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:01:25.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:01:25.752 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:00:26.625447
2026-01-21T10:01:25.753 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:01:25.753 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:01:25.753 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:01:34.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:01:44.782 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:01:54.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:02:04.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:02:14.827 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:02:24.842 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:02:24.845 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:01:26.764492
2026-01-21T10:02:24.845 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:02:24.846 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:02:24.846 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:02:33.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:02:43.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:02:53.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:03:03.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:03:13.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:03:23.932 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:03:23.935 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:02:26.905540
2026-01-21T10:03:23.935 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:03:23.935 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:03:23.935 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:03:32.948 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:03:42.962 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:03:52.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:04:02.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:04:13.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:04:23.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:04:23.021 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:03:27.045958
2026-01-21T10:04:23.021 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:04:23.021 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:04:23.021 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:04:32.035 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:04:42.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:04:52.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:05:02.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:05:12.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:05:22.103 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:05:22.105 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:04:27.187154
2026-01-21T10:05:22.106 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:05:22.106 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:05:22.106 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:05:31.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:05:41.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:05:51.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:06:01.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:06:11.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:06:21.193 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:06:21.196 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:05:27.327036
2026-01-21T10:06:21.196 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:06:21.196 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:06:21.196 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:06:30.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:06:40.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:06:50.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:07:00.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:07:10.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:07:20.283 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:07:20.286 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:06:27.468060
2026-01-21T10:07:20.286 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:07:20.286 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:07:20.286 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:07:29.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:07:39.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:07:49.328 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:07:59.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:08:09.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:08:19.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:08:19.369 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:07:27.608462
2026-01-21T10:08:19.369 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:08:19.369 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:08:19.369 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:08:28.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:08:38.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:08:48.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:08:58.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:09:08.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:09:18.454 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:09:18.457 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:08:27.747637
2026-01-21T10:09:18.457 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:09:18.457 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:09:18.457 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:09:27.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:09:37.485 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:09:47.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:09:57.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:10:07.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:10:17.545 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:10:17.547 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:09:27.890162
2026-01-21T10:10:17.547 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:10:17.547 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:10:17.547 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:10:26.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:10:36.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:10:46.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:10:56.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:11:06.622 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:11:16.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:11:16.641 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:10:28.029850
2026-01-21T10:11:16.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:11:16.641 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:11:16.641 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:11:25.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:11:35.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:11:45.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:11:55.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:12:05.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:12:15.729 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:12:15.732 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:11:28.171002
2026-01-21T10:12:15.732 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:12:15.732 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:12:15.732 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:12:24.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:12:34.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:12:44.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:12:54.791 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:13:04.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:13:14.821 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:13:14.823 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:12:28.310837
2026-01-21T10:13:14.824 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:13:14.824 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:13:14.824 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:13:23.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:13:33.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:13:43.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:13:53.883 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:14:03.896 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:14:13.909 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:14:13.912 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:13:28.450769
2026-01-21T10:14:13.912 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:14:13.913 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:14:13.913 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:14:22.927 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:14:32.941 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:14:42.955 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:14:52.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:15:02.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:15:13.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:15:13.002 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:14:28.590787
2026-01-21T10:15:13.003 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:15:13.003 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:15:13.003 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:15:22.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:15:32.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:15:42.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:15:52.059 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:16:02.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:16:12.086 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:16:12.107 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:15:28.730170
2026-01-21T10:16:12.107 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:16:12.107 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:16:12.107 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:16:21.121 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:16:31.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:16:41.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:16:51.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:17:01.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:17:11.195 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:17:11.197 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:16:28.868738
2026-01-21T10:17:11.197 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:17:11.198 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:17:11.198 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:17:20.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:17:30.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:17:40.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:17:50.252 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:18:00.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:18:10.281 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:18:10.284 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:17:29.008935
2026-01-21T10:18:10.284 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:18:10.284 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:18:10.285 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:18:19.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:18:29.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:18:39.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:18:49.343 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:18:59.356 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:19:09.368 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:19:09.370 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:18:29.150040
2026-01-21T10:19:09.370 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:19:09.371 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:19:09.371 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:19:18.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:19:28.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:19:38.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:19:48.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:19:58.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:20:08.454 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:20:08.457 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:19:29.290456
2026-01-21T10:20:08.457 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:20:08.457 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:20:08.457 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:20:17.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:20:27.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:20:37.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:20:47.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:20:57.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:21:07.543 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:21:07.545 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:20:29.430038
2026-01-21T10:21:07.545 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:21:07.545 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:21:07.545 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:21:16.559 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:21:26.574 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:21:36.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:21:46.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:21:56.619 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:22:06.635 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:22:06.637 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:21:29.573946
2026-01-21T10:22:06.637 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:22:06.637 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:22:06.637 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:22:15.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:22:25.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:22:35.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:22:45.697 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:22:55.712 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:23:05.727 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:23:05.729 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:22:29.716411
2026-01-21T10:23:05.729 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:23:05.729 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:23:05.729 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:23:14.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:23:24.756 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:23:34.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:23:44.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:23:54.802 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:24:04.817 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:24:04.819 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:23:29.855114
2026-01-21T10:24:04.819 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:24:04.820 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:24:04.820 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:24:13.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:24:23.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:24:33.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:24:43.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:24:53.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:25:03.908 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:25:03.911 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:24:29.997272
2026-01-21T10:25:03.911 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:25:03.911 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:25:03.911 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:25:12.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:25:22.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:25:32.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:25:42.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:25:52.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:26:02.994 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:26:02.996 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:25:30.136782
2026-01-21T10:26:02.997 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:26:02.997 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:26:02.997 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:26:12.007 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:26:22.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:26:32.036 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:26:42.049 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:26:52.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:27:02.077 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:27:02.080 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:26:30.278162
2026-01-21T10:27:02.080 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:27:02.080 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:27:02.081 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:27:11.093 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:27:21.108 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:27:31.124 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:27:41.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:27:51.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:28:01.168 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:28:01.170 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:27:30.422828
2026-01-21T10:28:01.171 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:28:01.171 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:28:01.171 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:28:10.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:28:20.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:28:30.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:28:40.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:28:50.243 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:29:00.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:29:00.270 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:28:30.562446
2026-01-21T10:29:00.271 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:29:00.271 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:29:00.271 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:29:09.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:29:19.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:29:29.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:29:39.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:29:49.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:29:59.353 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:29:59.355 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:29:30.704743
2026-01-21T10:29:59.355 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:29:59.355 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:29:59.355 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:30:08.366 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:30:18.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:30:28.393 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:30:38.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:30:48.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:30:58.436 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:30:58.439 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:30:30.845564
2026-01-21T10:30:58.439 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:30:58.439 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:30:58.439 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:31:07.452 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:31:17.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:31:27.483 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:31:37.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:31:47.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:31:57.529 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:31:57.532 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:31:30.986121
2026-01-21T10:31:57.532 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:31:57.532 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:31:57.532 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:32:06.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:32:16.560 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:32:26.575 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:32:36.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:32:46.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:32:56.623 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:32:56.625 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:32:31.124985
2026-01-21T10:32:56.625 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:32:56.625 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:32:56.626 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:33:05.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:33:15.653 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:33:25.669 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:33:35.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:33:45.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:33:55.716 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:33:55.718 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:33:31.265569
2026-01-21T10:33:55.718 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:33:55.719 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:33:55.719 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:34:04.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:34:14.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:34:24.764 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:34:34.780 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:34:44.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:34:54.811 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:34:54.813 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:34:31.409607
2026-01-21T10:34:54.813 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:34:54.813 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:34:54.813 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:35:03.827 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:35:13.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:35:23.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:35:33.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:35:43.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:35:53.903 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:35:53.905 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:35:31.549298
2026-01-21T10:35:53.905 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:35:53.906 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:35:53.906 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:36:02.920 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:36:12.934 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:36:22.950 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:36:32.964 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:36:42.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:36:52.993 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:36:52.996 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:36:31.701115
2026-01-21T10:36:52.996 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:36:52.996 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:36:52.997 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:37:02.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:37:12.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:37:22.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:37:32.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:37:42.068 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:37:52.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:37:52.086 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:37:31.842098
2026-01-21T10:37:52.086 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:37:52.086 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:37:52.086 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:38:01.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:38:11.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:38:21.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:38:31.141 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:38:41.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:38:51.172 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:38:51.175 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:38:31.984760
2026-01-21T10:38:51.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:38:51.176 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:38:51.176 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:39:00.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:39:10.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:39:20.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:39:30.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:39:40.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:39:50.263 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:39:50.266 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:39:32.125221
2026-01-21T10:39:50.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:39:50.266 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:39:50.266 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:39:59.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:40:09.295 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:40:19.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:40:29.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:40:39.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:40:49.358 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:40:49.360 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:40:32.265472
2026-01-21T10:40:49.360 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:40:49.360 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:40:49.360 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:40:58.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:41:08.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:41:18.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:41:28.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:41:38.434 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:41:48.449 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:41:48.451 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:41:32.405110
2026-01-21T10:41:48.452 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:41:48.452 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:41:48.452 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:41:57.466 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:42:07.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:42:17.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:42:27.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:42:37.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:42:47.540 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:42:47.542 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:42:32.545919
2026-01-21T10:42:47.542 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:42:47.542 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:42:47.542 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:42:56.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:43:06.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:43:16.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:43:26.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:43:36.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:43:46.633 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:43:46.635 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:43:32.686278
2026-01-21T10:43:46.635 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:43:46.635 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:43:46.635 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:43:55.649 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:44:05.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:44:15.680 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:44:25.694 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:44:35.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:44:45.724 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:44:45.727 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:44:32.831142
2026-01-21T10:44:45.727 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:44:45.727 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:44:45.727 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:44:54.742 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:45:04.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:45:14.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:45:24.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:45:34.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:45:44.819 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:45:44.840 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:45:32.972628
2026-01-21T10:45:44.841 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:45:44.841 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:45:44.841 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:45:53.852 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:46:03.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:46:13.883 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:46:23.897 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:46:33.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:46:43.926 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:46:43.928 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:46:33.114501
2026-01-21T10:46:43.928 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:46:43.929 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:46:43.929 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:46:52.942 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:47:02.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:47:12.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:47:22.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:47:33.001 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:47:43.016 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:47:43.018 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:47:33.257377
2026-01-21T10:47:43.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:47:43.019 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:47:43.019 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:47:52.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:48:02.042 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:48:12.056 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:48:22.070 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:48:32.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:48:42.099 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:48:42.121 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:48:33.397546
2026-01-21T10:48:42.121 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:48:42.121 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:48:42.121 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:48:51.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:49:01.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:49:11.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:49:21.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:49:31.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:49:41.209 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:49:41.211 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:49:33.539702
2026-01-21T10:49:41.211 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:49:41.212 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:49:41.212 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:49:50.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:50:00.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:50:10.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:50:20.269 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:50:30.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:50:40.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:50:40.299 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:50:33.682511
2026-01-21T10:50:40.299 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:50:40.299 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:50:40.299 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:50:49.313 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:50:59.328 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:51:09.343 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:51:19.358 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:51:29.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:51:39.389 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:51:39.401 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:51:33.820242
2026-01-21T10:51:39.401 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:51:39.402 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:51:39.402 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:51:48.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:51:58.430 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:52:08.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:52:18.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:52:28.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:52:38.491 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:52:38.493 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:52:33.962614
2026-01-21T10:52:38.494 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:52:38.494 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:52:38.494 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:52:47.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:52:57.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:53:07.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:53:17.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:53:27.567 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:53:37.587 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:53:37.589 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:53:34.103879
2026-01-21T10:53:37.590 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:53:37.590 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:53:37.590 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:53:46.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:53:56.619 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:54:06.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:54:16.650 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:54:26.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:54:36.681 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:54:36.684 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:54:34.245796
2026-01-21T10:54:36.684 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:54:36.684 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:54:36.685 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:54:45.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:54:55.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:55:05.728 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:55:15.742 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:55:25.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:55:35.772 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:55:35.775 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:55:34.390616
2026-01-21T10:55:35.775 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:55:35.776 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:55:35.776 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:55:44.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:55:54.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:56:04.820 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:56:14.835 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:56:24.850 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:56:34.865 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:56:34.868 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:55:34.390616
2026-01-21T10:56:34.868 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:56:34.868 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:56:34.868 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:56:43.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:56:53.896 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:57:03.910 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:57:13.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:57:23.940 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:57:33.955 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:57:33.958 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:56:34.532264
2026-01-21T10:57:33.958 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:57:33.958 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:57:33.958 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:57:42.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:57:52.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:58:03.001 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:58:13.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:58:23.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:58:33.041 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:58:33.043 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:57:34.675130
2026-01-21T10:58:33.043 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:58:33.044 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:58:33.044 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:58:42.056 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:58:52.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T10:59:02.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T10:59:12.100 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T10:59:22.114 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T10:59:32.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T10:59:32.132 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:58:34.816009
2026-01-21T10:59:32.132 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T10:59:32.132 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T10:59:32.132 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T10:59:41.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T10:59:51.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:00:01.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:00:11.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:00:21.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:00:31.218 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:00:31.220 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T10:59:34.957596
2026-01-21T11:00:31.220 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:00:31.220 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:00:31.221 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:00:40.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:00:50.247 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:01:00.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:01:10.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:01:20.291 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:01:30.303 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:01:30.306 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:00:35.098744
2026-01-21T11:01:30.306 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:01:30.306 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:01:30.307 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:01:39.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:01:49.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:01:59.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:02:09.364 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:02:19.377 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:02:29.393 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:02:29.395 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:01:35.239700
2026-01-21T11:02:29.395 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:02:29.395 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:02:29.395 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:02:38.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:02:48.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:02:58.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:03:08.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:03:18.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:03:28.487 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:03:28.489 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:02:35.387995
2026-01-21T11:03:28.489 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:03:28.490 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:03:28.490 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:03:37.503 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:03:47.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:03:57.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:04:07.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:04:17.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:04:27.581 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:04:27.584 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:03:35.530164
2026-01-21T11:04:27.584 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:04:27.584 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:04:27.584 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:04:36.599 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:04:46.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:04:56.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:05:06.643 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:05:16.659 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:05:26.674 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:05:26.676 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:04:35.671475
2026-01-21T11:05:26.677 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:05:26.677 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:05:26.677 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:05:35.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:05:45.705 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:05:55.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:06:05.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:06:15.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:06:25.766 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:06:25.769 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:05:35.813419
2026-01-21T11:06:25.770 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:06:25.770 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:06:25.770 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:06:34.784 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:06:44.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:06:54.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:07:04.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:07:14.845 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:07:24.860 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:07:24.862 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:06:35.954001
2026-01-21T11:07:24.863 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:07:24.863 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:07:24.863 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:07:33.878 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:07:43.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:07:53.906 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:08:03.922 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:08:13.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:08:23.953 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:08:23.970 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:07:36.104012
2026-01-21T11:08:23.970 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:08:23.971 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:08:23.971 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:08:32.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:08:43.001 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:08:53.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:09:03.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:09:13.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:09:23.057 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:09:23.059 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:08:36.247521
2026-01-21T11:09:23.060 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:09:23.060 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:09:23.060 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:09:32.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:09:42.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:09:52.100 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:10:02.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:10:12.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:10:22.144 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:10:22.146 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:09:36.394258
2026-01-21T11:10:22.147 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:10:22.147 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:10:22.147 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:10:31.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:10:41.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:10:51.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:11:01.206 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:11:11.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:11:21.237 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:11:21.237 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:10:36.535364
2026-01-21T11:11:21.237 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:11:21.237 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:11:21.237 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:11:30.251 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:11:40.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:11:50.282 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:12:00.298 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:12:10.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:12:20.328 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:12:20.330 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:11:36.675960
2026-01-21T11:12:20.331 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:12:20.331 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:12:20.331 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:12:29.344 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:12:39.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:12:49.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:12:59.389 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:13:09.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:13:19.420 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:13:19.422 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:12:36.821081
2026-01-21T11:13:19.423 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:13:19.423 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:13:19.423 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:13:28.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:13:38.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:13:48.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:13:58.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:14:08.491 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:14:18.505 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:14:18.507 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:13:36.965843
2026-01-21T11:14:18.507 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:14:18.507 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:14:18.507 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:14:27.520 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:14:37.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:14:47.549 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:14:57.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:15:07.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:15:17.595 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:15:17.598 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:14:37.110465
2026-01-21T11:15:17.598 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:15:17.598 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:15:17.599 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:15:26.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:15:36.627 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:15:46.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:15:56.658 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:16:06.672 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:16:16.688 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:16:16.690 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:15:37.252892
2026-01-21T11:16:16.690 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:16:16.691 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:16:16.691 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:16:25.705 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:16:35.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:16:45.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:16:55.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:17:05.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:17:15.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:17:15.785 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:16:37.395777
2026-01-21T11:17:15.785 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:17:15.785 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:17:15.785 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:17:24.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:17:34.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:17:44.830 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:17:54.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:18:04.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:18:14.871 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:18:14.873 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:17:37.536917
2026-01-21T11:18:14.873 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:18:14.874 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:18:14.874 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:18:23.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:18:33.899 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:18:43.913 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:18:53.928 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:19:03.944 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:19:13.958 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:19:13.960 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:18:37.679732
2026-01-21T11:19:13.960 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:19:13.961 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:19:13.961 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:19:22.973 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:19:32.988 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:19:43.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:19:53.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:20:03.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:20:13.044 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:20:13.046 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:19:37.826350
2026-01-21T11:20:13.047 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:20:13.047 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:20:13.047 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:20:22.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:20:32.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:20:42.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:20:52.103 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:21:02.118 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:21:12.133 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:21:12.135 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:20:37.975126
2026-01-21T11:21:12.136 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:21:12.136 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:21:12.136 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:21:21.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:21:31.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:21:41.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:21:51.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:22:01.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:22:11.223 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:22:11.226 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:21:38.117557
2026-01-21T11:22:11.226 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:22:11.226 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:22:11.226 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:22:20.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:22:30.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:22:40.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:22:50.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:23:00.298 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:23:10.312 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:23:10.315 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:22:38.262794
2026-01-21T11:23:10.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:23:10.315 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:23:10.315 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:23:19.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:23:29.343 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:23:39.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:23:49.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:23:59.389 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:24:09.404 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:24:09.406 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:23:38.409149
2026-01-21T11:24:09.406 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:24:09.407 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:24:09.407 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:24:18.420 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:24:28.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:24:38.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:24:48.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:24:58.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:25:08.490 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:25:08.493 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:24:38.551017
2026-01-21T11:25:08.494 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:25:08.494 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:25:08.494 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:25:17.506 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:25:27.520 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:25:37.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:25:47.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:25:57.564 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:26:07.579 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:26:07.581 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:25:38.692486
2026-01-21T11:26:07.582 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:26:07.582 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:26:07.582 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:26:16.596 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:26:26.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:26:36.624 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:26:46.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:26:56.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:27:06.667 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:27:06.670 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:26:38.836275
2026-01-21T11:27:06.670 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:27:06.670 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:27:06.670 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:27:15.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:27:25.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:27:35.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:27:45.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:27:55.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:28:05.758 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:28:05.760 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:27:38.978475
2026-01-21T11:28:05.761 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:28:05.761 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:28:05.761 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:28:14.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:28:24.790 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:28:34.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:28:44.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:28:54.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:29:04.849 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:29:04.852 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:28:39.125664
2026-01-21T11:29:04.852 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:29:04.852 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:29:04.852 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:29:13.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:29:23.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:29:33.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:29:43.909 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:29:53.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:30:03.937 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:30:03.940 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:29:39.272701
2026-01-21T11:30:03.940 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:30:03.941 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:30:03.941 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:30:12.954 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:30:22.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:30:32.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:30:42.995 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:30:53.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:31:03.023 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:31:03.047 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:30:39.420651
2026-01-21T11:31:03.047 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:31:03.047 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:31:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:31:12.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:31:22.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:31:32.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:31:42.103 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:31:52.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:32:02.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:32:02.132 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:31:39.566587
2026-01-21T11:32:02.132 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:32:02.132 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:32:02.132 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:32:11.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:32:21.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:32:31.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:32:41.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:32:51.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:33:01.218 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:33:01.221 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:32:39.712546
2026-01-21T11:33:01.221 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:33:01.221 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:33:01.221 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:33:10.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:33:20.250 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:33:30.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:33:40.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:33:50.295 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:34:00.310 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:34:00.312 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:33:39.856256
2026-01-21T11:34:00.313 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:34:00.313 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:34:00.313 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:34:09.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:34:19.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:34:29.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:34:39.372 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:34:49.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:34:59.404 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:34:59.405 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:34:40.005698
2026-01-21T11:34:59.405 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:34:59.405 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:34:59.405 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:35:08.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:35:18.434 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:35:28.448 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:35:38.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:35:48.474 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:35:58.488 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:35:58.490 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:35:40.148137
2026-01-21T11:35:58.490 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:35:58.490 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:35:58.490 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:36:07.503 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:36:17.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:36:27.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:36:37.546 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:36:47.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:36:57.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:36:57.580 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:36:40.296547
2026-01-21T11:36:57.581 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:36:57.581 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:36:57.581 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:37:06.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:37:16.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:37:26.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:37:36.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:37:46.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:37:56.669 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:37:56.672 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:37:40.452256
2026-01-21T11:37:56.672 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:37:56.672 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:37:56.672 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:38:05.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:38:15.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:38:25.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:38:35.730 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:38:45.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:38:55.761 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:38:55.764 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:38:40.595654
2026-01-21T11:38:55.764 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:38:55.764 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:38:55.764 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:39:04.777 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:39:14.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:39:24.807 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:39:34.822 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:39:44.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:39:54.851 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:39:54.853 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:39:40.732629
2026-01-21T11:39:54.853 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:39:54.853 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:39:54.853 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:40:03.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:40:13.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:40:23.896 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:40:33.909 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:40:43.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:40:53.940 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:40:53.942 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:40:40.872406
2026-01-21T11:40:53.989 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:40:53.990 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:40:53.990 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:41:03.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:41:13.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:41:23.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:41:33.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:41:43.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:41:53.065 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:41:53.068 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:41:41.014579
2026-01-21T11:41:53.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:41:53.068 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:41:53.068 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:42:02.082 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:42:12.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:42:22.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:42:32.125 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:42:42.141 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:42:52.155 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:42:52.157 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:42:41.155021
2026-01-21T11:42:52.157 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:42:52.157 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:42:52.157 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:43:01.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:43:11.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:43:21.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:43:31.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:43:41.225 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:43:51.239 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:43:51.241 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:43:41.293139
2026-01-21T11:43:51.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:43:51.242 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:43:51.242 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:44:00.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:44:10.269 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:44:20.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:44:30.301 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:44:40.316 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:44:50.330 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:44:50.332 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:44:41.431724
2026-01-21T11:44:50.333 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:44:50.333 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:44:50.333 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:44:59.346 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:45:09.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:45:19.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:45:29.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:45:39.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:45:49.423 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:45:49.425 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:45:41.575309
2026-01-21T11:45:49.426 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:45:49.426 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:45:49.426 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:45:58.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:46:08.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:46:18.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:46:28.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:46:38.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:46:48.507 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:46:48.509 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:46:41.723763
2026-01-21T11:46:48.509 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:46:48.509 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:46:48.509 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:46:57.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:47:07.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:47:17.548 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:47:27.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:47:37.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:47:47.594 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:47:47.596 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:47:41.863175
2026-01-21T11:47:47.596 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:47:47.596 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:47:47.596 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:47:56.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:48:06.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:48:16.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:48:26.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:48:36.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:48:46.686 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:48:46.707 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:48:42.003441
2026-01-21T11:48:46.708 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:48:46.708 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:48:46.708 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:48:55.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:49:05.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:49:15.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:49:25.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:49:35.782 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:49:45.798 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:49:45.800 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:49:42.145067
2026-01-21T11:49:45.801 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:49:45.801 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:49:45.801 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:49:54.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:50:04.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:50:14.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:50:24.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:50:34.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:50:44.891 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:50:44.893 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:50:42.285070
2026-01-21T11:50:44.894 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:50:44.894 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:50:44.894 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:50:53.906 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:51:03.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:51:13.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:51:23.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:51:33.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:51:43.978 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:51:44.000 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:51:42.422644
2026-01-21T11:51:44.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:51:44.001 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:51:44.001 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:51:53.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:52:03.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:52:13.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:52:23.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:52:33.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:52:43.078 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:52:43.083 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:52:42.562652
2026-01-21T11:52:43.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:52:43.083 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:52:43.083 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:52:52.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:53:02.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:53:12.125 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:53:22.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:53:32.152 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:53:42.166 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:53:42.169 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:52:42.562652
2026-01-21T11:53:42.169 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:53:42.170 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:53:42.170 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:53:51.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:54:01.195 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:54:11.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:54:21.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:54:31.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:54:41.250 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:54:41.252 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:53:42.702111
2026-01-21T11:54:41.252 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:54:41.252 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:54:41.252 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:54:50.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:55:00.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:55:10.294 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:55:20.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:55:30.324 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:55:40.337 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:55:40.340 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:54:42.848625
2026-01-21T11:55:40.340 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:55:40.340 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:55:40.340 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:55:49.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:55:59.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:56:09.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:56:19.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:56:29.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:56:39.426 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:56:39.428 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:55:42.989566
2026-01-21T11:56:39.429 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:56:39.429 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:56:39.429 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:56:48.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:56:58.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:57:08.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:57:18.485 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:57:28.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:57:38.513 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:57:38.516 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:56:43.131952
2026-01-21T11:57:38.516 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:57:38.517 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:57:38.517 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:57:47.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:57:57.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:58:07.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:58:17.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:58:27.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:58:37.601 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:58:37.604 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:57:43.275744
2026-01-21T11:58:37.604 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:58:37.604 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:58:37.604 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:58:46.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:58:56.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T11:59:06.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T11:59:16.661 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T11:59:26.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T11:59:36.692 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T11:59:36.695 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:58:43.418186
2026-01-21T11:59:36.695 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T11:59:36.695 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T11:59:36.695 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T11:59:45.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T11:59:55.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:00:05.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:00:15.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:00:25.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:00:35.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:00:35.784 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T11:59:43.559836
2026-01-21T12:00:35.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:00:35.784 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:00:35.785 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:00:44.798 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:00:54.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:01:04.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:01:14.845 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:01:24.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:01:34.873 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:01:34.876 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:00:43.701117
2026-01-21T12:01:34.876 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:01:34.876 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:01:34.876 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:01:43.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:01:53.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:02:03.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:02:13.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:02:23.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:02:33.961 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:02:33.963 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:01:43.843227
2026-01-21T12:02:33.963 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:02:33.963 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:02:33.963 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:02:42.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:02:52.991 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:03:03.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:03:13.019 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:03:23.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:03:33.046 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:03:33.049 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:02:43.983821
2026-01-21T12:03:33.049 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:03:33.050 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:03:33.050 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:03:42.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:03:52.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:04:02.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:04:12.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:04:22.121 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:04:32.136 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:04:32.139 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:03:44.125555
2026-01-21T12:04:32.140 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:04:32.140 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:04:32.140 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:04:41.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:04:51.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:05:01.182 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:05:11.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:05:21.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:05:31.225 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:05:31.227 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:04:44.264676
2026-01-21T12:05:31.227 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:05:31.227 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:05:31.227 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:05:40.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:05:50.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:06:00.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:06:10.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:06:20.298 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:06:30.313 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:06:30.315 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:05:44.403207
2026-01-21T12:06:30.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:06:30.315 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:06:30.316 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:06:39.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:06:49.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:06:59.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:07:09.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:07:19.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:07:29.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:07:29.409 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:06:44.546109
2026-01-21T12:07:29.409 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:07:29.409 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:07:29.410 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:07:38.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:07:48.439 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:07:58.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:08:08.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:08:18.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:08:28.494 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:08:28.496 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:07:44.686727
2026-01-21T12:08:28.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:08:28.504 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:08:28.504 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:08:37.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:08:47.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:08:57.544 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:09:07.558 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:09:17.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:09:27.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:09:27.590 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:08:44.827444
2026-01-21T12:09:27.591 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:09:27.591 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:09:27.591 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:09:36.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:09:46.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:09:56.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:10:06.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:10:16.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:10:26.677 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:10:26.680 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:09:44.969121
2026-01-21T12:10:26.681 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:10:26.681 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:10:26.681 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:10:35.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:10:45.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:10:55.724 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:11:05.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:11:15.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:11:25.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:11:25.772 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:10:45.110946
2026-01-21T12:11:25.772 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:11:25.772 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:11:25.772 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:11:34.786 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:11:44.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:11:54.812 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:12:04.827 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:12:14.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:12:24.856 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:12:24.858 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:11:45.261393
2026-01-21T12:12:24.859 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:12:24.859 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:12:24.859 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:12:33.877 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:12:43.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:12:53.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:13:03.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:13:13.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:13:23.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:13:23.950 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:12:45.412943
2026-01-21T12:13:23.950 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:13:23.951 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:13:23.951 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:13:32.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:13:42.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:13:52.989 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:14:03.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:14:13.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:14:23.031 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:14:23.034 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:13:45.551990
2026-01-21T12:14:23.034 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:14:23.034 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:14:23.034 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:14:32.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:14:42.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:14:52.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:15:02.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:15:12.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:15:22.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:15:22.120 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:14:45.690735
2026-01-21T12:15:22.121 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:15:22.121 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:15:22.121 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:15:31.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:15:41.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:15:51.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:16:01.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:16:11.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:16:21.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:16:21.209 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:15:45.830139
2026-01-21T12:16:21.209 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:16:21.210 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:16:21.210 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:16:30.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:16:40.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:16:50.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:17:00.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:17:10.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:17:20.299 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:17:20.302 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:16:45.970189
2026-01-21T12:17:20.302 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:17:20.302 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:17:20.302 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:17:29.316 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:17:39.332 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:17:49.347 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:17:59.363 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:18:09.377 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:18:19.391 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:18:19.394 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:17:46.116381
2026-01-21T12:18:19.394 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:18:19.394 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:18:19.395 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:18:28.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:18:38.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:18:48.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:18:58.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:19:08.468 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:19:18.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:19:18.486 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:18:46.257062
2026-01-21T12:19:18.487 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:19:18.487 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:19:18.487 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:19:27.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:19:37.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:19:47.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:19:57.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:20:07.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:20:17.577 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:20:17.580 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:19:46.396719
2026-01-21T12:20:17.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:20:17.580 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:20:17.580 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:20:26.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:20:36.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:20:46.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:20:56.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:21:06.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:21:16.671 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:21:16.674 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:20:46.538657
2026-01-21T12:21:16.674 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:21:16.675 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:21:16.675 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:21:25.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:21:35.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:21:45.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:21:55.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:22:05.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:22:15.767 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:22:15.770 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:21:46.682640
2026-01-21T12:22:15.770 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:22:15.770 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:22:15.770 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:22:24.785 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:22:34.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:22:44.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:22:54.830 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:23:04.845 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:23:14.860 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:23:14.862 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:22:46.833659
2026-01-21T12:23:14.863 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:23:14.863 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:23:14.863 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:23:23.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:23:33.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:23:43.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:23:53.920 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:24:03.935 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:24:13.950 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:24:13.952 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:23:46.977173
2026-01-21T12:24:13.953 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:24:13.953 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:24:13.953 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:24:22.966 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:24:32.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:24:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:24:53.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:25:03.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:25:13.037 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:25:13.040 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:24:47.116079
2026-01-21T12:25:13.040 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:25:13.040 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:25:13.040 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:25:22.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:25:32.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:25:42.082 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:25:52.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:26:02.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:26:12.127 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:26:12.130 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:25:47.257717
2026-01-21T12:26:12.130 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:26:12.130 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:26:12.130 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:26:21.143 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:26:31.158 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:26:41.172 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:26:51.186 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:27:01.200 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:27:11.213 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:27:11.215 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:26:47.397501
2026-01-21T12:27:11.216 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:27:11.216 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:27:11.216 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:27:20.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:27:30.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:27:40.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:27:50.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:28:00.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:28:10.292 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:28:10.295 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:27:47.537464
2026-01-21T12:28:10.295 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:28:10.295 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:28:10.296 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:28:19.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:28:29.322 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:28:39.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:28:49.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:28:59.363 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:29:09.378 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:29:09.381 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:28:47.678369
2026-01-21T12:29:09.381 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:29:09.382 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:29:09.382 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:29:18.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:29:28.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:29:38.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:29:48.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:29:58.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:30:08.467 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:30:08.470 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:29:47.818946
2026-01-21T12:30:08.470 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:30:08.470 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:30:08.470 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:30:17.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:30:27.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:30:37.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:30:47.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:30:57.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:31:07.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:31:07.563 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:30:47.973827
2026-01-21T12:31:07.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:31:07.563 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:31:07.563 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:31:16.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:31:26.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:31:36.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:31:46.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:31:56.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:32:06.654 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:32:06.656 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:31:48.115353
2026-01-21T12:32:06.657 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:32:06.657 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:32:06.657 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:32:15.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:32:25.687 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:32:35.702 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:32:45.717 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:32:55.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:33:05.747 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:33:05.750 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:32:48.255782
2026-01-21T12:33:05.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:33:05.750 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:33:05.750 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:33:14.764 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:33:24.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:33:34.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:33:44.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:33:54.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:34:04.840 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:34:04.842 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:33:48.395746
2026-01-21T12:34:04.842 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:34:04.843 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:34:04.843 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:34:13.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:34:23.872 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:34:33.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:34:43.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:34:53.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:35:03.929 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:35:03.931 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:34:48.536563
2026-01-21T12:35:03.931 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:35:03.931 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:35:03.932 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:35:12.945 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:35:22.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:35:32.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:35:42.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:35:53.007 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:36:03.022 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:36:03.025 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:35:48.674461
2026-01-21T12:36:03.025 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:36:03.025 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:36:03.026 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:36:12.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:36:22.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:36:32.064 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:36:42.079 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:36:52.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:37:02.108 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:37:02.110 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:36:48.813046
2026-01-21T12:37:02.111 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:37:02.111 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:37:02.111 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:37:11.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:37:21.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:37:31.144 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:37:41.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:37:51.174 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:38:01.188 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:38:01.190 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:37:48.952421
2026-01-21T12:38:01.191 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:38:01.191 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:38:01.191 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:38:10.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:38:20.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:38:30.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:38:40.259 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:38:50.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:39:00.289 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:39:00.292 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:38:49.093354
2026-01-21T12:39:00.292 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:39:00.292 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:39:00.292 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:39:09.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:39:19.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:39:29.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:39:39.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:39:49.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:39:59.381 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:39:59.383 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:39:49.232748
2026-01-21T12:39:59.383 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:39:59.384 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:39:59.384 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:40:08.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:40:18.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:40:28.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:40:38.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:40:48.455 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:40:58.471 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:40:58.473 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:40:49.373114
2026-01-21T12:40:58.474 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:40:58.474 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:40:58.474 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:41:07.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:41:17.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:41:27.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:41:37.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:41:47.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:41:57.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:41:57.565 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:41:49.511493
2026-01-21T12:41:57.565 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:41:57.565 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:41:57.566 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:42:06.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:42:16.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:42:26.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:42:36.624 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:42:46.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:42:56.654 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:42:56.657 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:42:49.660708
2026-01-21T12:42:56.657 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:42:56.657 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:42:56.657 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:43:05.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:43:15.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:43:25.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:43:35.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:43:45.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:43:55.748 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:43:55.751 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:43:49.802887
2026-01-21T12:43:55.751 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:43:55.751 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:43:55.751 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:44:04.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:44:14.781 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:44:24.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:44:34.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:44:44.827 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:44:54.841 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:44:54.844 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:44:49.945692
2026-01-21T12:44:54.844 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:44:54.844 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:44:54.845 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:45:03.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:45:13.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:45:23.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:45:33.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:45:43.920 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:45:53.936 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:45:53.938 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:45:50.085455
2026-01-21T12:45:53.986 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:45:53.986 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:45:53.986 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:46:02.997 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:46:13.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:46:23.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:46:33.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:46:43.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:46:53.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:46:53.071 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:46:50.226331
2026-01-21T12:46:53.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:46:53.071 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:46:53.071 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:47:02.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:47:12.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:47:22.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:47:32.128 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:47:42.143 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:47:52.157 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:47:52.160 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:47:50.377816
2026-01-21T12:47:52.160 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:47:52.160 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:47:52.160 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:48:01.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:48:11.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:48:21.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:48:31.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:48:41.230 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:48:51.245 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:48:51.247 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:48:50.518806
2026-01-21T12:48:51.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:48:51.248 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:48:51.248 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:49:00.262 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:49:10.277 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:49:20.294 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:49:30.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:49:40.324 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:49:50.338 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:49:50.340 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:48:50.518806
2026-01-21T12:49:50.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:49:50.341 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:49:50.341 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:49:59.356 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:50:09.371 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:50:19.387 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:50:29.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:50:39.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:50:49.432 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:50:49.434 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:49:50.657296
2026-01-21T12:50:49.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:50:49.435 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:50:49.435 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:50:58.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:51:08.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:51:18.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:51:28.493 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:51:38.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:51:48.524 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:51:48.526 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:50:50.799362
2026-01-21T12:51:48.527 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:51:48.527 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:51:48.527 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:51:57.541 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:52:07.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:52:17.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:52:27.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:52:37.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:52:47.621 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:52:47.624 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:51:50.941044
2026-01-21T12:52:47.624 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:52:47.624 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:52:47.624 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:52:56.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:53:06.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:53:16.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:53:26.687 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:53:36.702 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:53:46.718 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:53:46.720 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:52:51.082176
2026-01-21T12:53:46.720 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:53:46.720 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:53:46.720 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:53:55.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:54:05.750 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:54:15.765 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:54:25.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:54:35.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:54:45.808 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:54:45.811 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:53:51.226443
2026-01-21T12:54:45.811 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:54:45.811 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:54:45.811 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:54:54.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:55:04.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:55:14.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:55:24.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:55:34.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:55:44.901 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:55:44.903 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:54:51.368520
2026-01-21T12:55:44.903 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:55:44.903 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:55:44.904 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:55:53.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:56:03.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:56:13.948 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:56:23.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:56:33.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:56:43.991 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:56:43.993 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:55:51.510980
2026-01-21T12:56:44.040 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:56:44.041 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:56:44.041 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:56:53.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:57:03.068 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:57:13.083 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:57:23.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:57:33.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:57:43.128 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:57:43.131 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:56:51.659525
2026-01-21T12:57:43.131 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:57:43.131 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:57:43.131 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:57:52.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:58:02.158 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:58:12.174 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:58:22.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:58:32.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:58:42.218 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:58:42.239 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:57:51.799018
2026-01-21T12:58:42.239 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:58:42.239 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:58:42.239 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:58:51.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T12:59:01.267 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T12:59:11.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T12:59:21.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T12:59:31.313 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T12:59:41.327 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T12:59:41.330 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:58:51.943475
2026-01-21T12:59:41.330 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T12:59:41.330 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T12:59:41.331 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T12:59:50.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:00:00.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:00:10.376 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:00:20.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:00:30.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:00:40.420 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:00:40.423 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T12:59:52.085142
2026-01-21T13:00:40.423 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:00:40.423 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:00:40.423 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:00:49.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:00:59.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:01:09.469 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:01:19.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:01:29.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:01:39.515 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:01:39.517 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:00:52.225044
2026-01-21T13:01:39.518 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:01:39.518 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:01:39.518 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:01:48.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:01:58.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:02:08.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:02:18.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:02:28.597 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:02:38.613 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:02:38.616 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:01:52.365795
2026-01-21T13:02:38.616 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:02:38.616 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:02:38.616 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:02:47.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:02:57.647 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:03:07.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:03:17.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:03:27.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:03:37.709 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:03:37.712 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:02:52.506130
2026-01-21T13:03:37.712 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:03:37.712 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:03:37.712 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:03:46.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:03:56.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:04:06.759 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:04:16.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:04:26.786 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:04:36.802 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:04:36.804 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:03:52.645766
2026-01-21T13:04:36.804 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:04:36.805 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:04:36.805 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:04:45.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:04:55.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:05:05.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:05:15.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:05:25.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:05:35.894 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:05:35.896 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:04:52.785160
2026-01-21T13:05:35.896 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:05:35.896 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:05:35.897 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:05:44.909 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:05:54.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:06:04.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:06:14.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:06:24.969 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:06:34.985 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:06:34.987 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:05:52.938299
2026-01-21T13:06:34.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:06:34.988 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:06:34.988 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:06:44.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:06:54.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:07:04.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:07:14.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:07:24.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:07:34.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:07:34.073 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:06:53.087039
2026-01-21T13:07:34.074 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:07:34.074 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:07:34.074 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:07:43.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:07:53.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:08:03.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:08:13.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:08:23.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:08:33.159 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:08:33.161 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:07:53.227911
2026-01-21T13:08:33.161 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:08:33.161 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:08:33.161 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:08:42.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:08:52.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:09:02.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:09:12.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:09:22.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:09:32.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:09:32.251 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:08:53.369382
2026-01-21T13:09:32.251 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:09:32.252 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:09:32.252 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:09:41.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:09:51.282 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:10:01.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:10:11.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:10:21.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:10:31.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:10:31.344 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:09:53.509522
2026-01-21T13:10:31.344 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:10:31.345 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:10:31.345 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:10:40.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:10:50.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:11:00.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:11:10.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:11:20.420 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:11:30.434 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:11:30.435 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:10:53.649377
2026-01-21T13:11:30.436 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:11:30.436 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:11:30.436 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:11:39.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:11:49.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:11:59.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:12:09.493 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:12:19.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:12:29.522 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:12:29.524 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:11:53.789447
2026-01-21T13:12:29.524 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:12:29.525 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:12:29.525 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:12:38.537 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:12:48.553 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:12:58.567 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:13:08.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:13:18.596 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:13:28.611 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:13:28.614 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:12:53.930073
2026-01-21T13:13:28.614 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:13:28.615 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:13:28.615 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:13:37.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:13:47.644 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:13:57.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:14:07.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:14:17.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:14:27.705 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:14:27.707 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:13:54.069410
2026-01-21T13:14:27.707 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:14:27.707 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:14:27.707 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:14:36.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:14:46.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:14:56.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:15:06.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:15:16.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:15:26.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:15:26.791 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:14:54.213408
2026-01-21T13:15:26.791 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:15:26.791 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:15:26.791 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:15:35.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:15:45.820 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:15:55.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:16:05.850 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:16:15.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:16:25.880 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:16:25.883 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:15:54.352734
2026-01-21T13:16:25.883 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:16:25.883 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:16:25.883 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:16:34.896 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:16:44.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:16:54.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:17:04.940 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:17:14.955 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:17:24.970 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:17:24.972 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:16:54.495906
2026-01-21T13:17:24.973 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:17:24.973 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:17:24.973 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:17:33.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:17:44.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:17:54.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:18:04.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:18:14.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:18:24.057 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:18:24.059 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:17:54.635638
2026-01-21T13:18:24.059 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:18:24.060 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:18:24.060 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:18:33.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:18:43.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:18:53.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:19:03.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:19:13.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:19:23.147 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:19:23.150 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:18:54.776908
2026-01-21T13:19:23.150 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:19:23.150 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:19:23.150 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:19:32.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:19:42.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:19:52.194 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:20:02.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:20:12.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:20:22.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:20:22.235 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:19:54.920686
2026-01-21T13:20:22.235 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:20:22.235 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:20:22.235 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:20:31.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:20:41.262 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:20:51.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:21:01.292 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:21:11.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:21:21.321 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:21:21.340 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:20:55.060382
2026-01-21T13:21:21.340 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:21:21.340 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:21:21.340 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:21:30.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:21:40.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:21:50.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:22:00.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:22:10.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:22:20.427 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:22:20.430 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:21:55.200954
2026-01-21T13:22:20.430 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:22:20.430 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:22:20.430 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:22:29.444 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:22:39.459 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:22:49.475 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:22:59.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:23:09.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:23:19.515 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:23:19.518 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:22:55.339834
2026-01-21T13:23:19.518 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:23:19.518 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:23:19.518 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:23:28.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:23:38.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:23:48.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:23:58.577 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:24:08.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:24:18.607 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:24:18.610 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:23:55.482386
2026-01-21T13:24:18.610 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:24:18.610 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:24:18.610 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:24:27.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:24:37.640 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:24:47.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:24:57.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:25:07.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:25:17.700 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:25:17.703 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:24:55.621883
2026-01-21T13:25:17.703 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:25:17.703 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:25:17.703 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:25:26.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:25:36.730 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:25:46.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:25:56.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:26:06.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:26:16.785 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:26:16.787 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:25:55.760576
2026-01-21T13:26:16.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:26:16.788 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:26:16.788 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:26:25.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:26:35.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:26:45.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:26:55.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:27:05.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:27:15.873 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:27:15.875 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:26:55.899882
2026-01-21T13:27:15.876 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:27:15.876 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:27:15.876 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:27:24.889 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:27:34.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:27:44.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:27:54.934 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:28:04.948 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:28:14.959 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:28:14.962 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:27:56.042542
2026-01-21T13:28:14.962 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:28:14.962 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:28:14.962 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:28:23.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:28:33.991 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:28:44.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:28:54.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:29:04.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:29:14.049 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:29:14.051 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:28:56.182600
2026-01-21T13:29:14.051 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:29:14.052 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:29:14.052 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:29:23.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:29:33.078 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:29:43.091 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:29:53.106 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:30:03.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:30:13.134 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:30:13.136 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:29:56.322464
2026-01-21T13:30:13.183 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:30:13.184 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:30:13.184 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:30:22.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:30:32.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:30:42.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:30:52.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:31:02.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:31:12.268 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:31:12.270 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:30:56.467221
2026-01-21T13:31:12.270 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:31:12.271 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:31:12.271 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:31:21.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:31:31.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:31:41.313 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:31:51.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:32:01.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:32:11.358 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:32:11.382 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:31:56.609490
2026-01-21T13:32:11.383 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:32:11.383 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:32:11.383 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:32:20.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:32:30.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:32:40.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:32:50.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:33:00.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:33:10.470 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:33:10.472 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:32:56.751756
2026-01-21T13:33:10.472 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:33:10.473 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:33:10.473 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:33:19.483 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:33:29.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:33:39.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:33:49.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:33:59.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:34:09.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:34:09.562 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:33:56.892231
2026-01-21T13:34:09.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:34:09.563 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:34:09.563 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:34:18.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:34:28.590 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:34:38.606 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:34:48.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:34:58.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:35:08.652 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:35:08.655 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:34:57.033734
2026-01-21T13:35:08.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:35:08.655 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:35:08.655 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:35:17.669 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:35:27.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:35:37.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:35:47.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:35:57.733 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:36:07.745 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:36:07.747 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:35:57.173876
2026-01-21T13:36:07.748 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:36:07.748 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:36:07.748 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:36:16.761 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:36:26.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:36:36.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:36:46.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:36:56.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:37:06.832 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:37:06.835 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:36:57.311709
2026-01-21T13:37:06.835 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:37:06.835 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:37:06.835 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:37:15.849 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:37:25.862 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:37:35.876 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:37:45.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:37:55.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:38:05.918 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:38:05.921 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:37:57.452597
2026-01-21T13:38:05.921 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:38:05.921 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:38:05.922 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:38:14.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:38:24.948 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:38:34.962 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:38:44.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:38:54.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:39:05.008 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:39:05.011 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:38:57.597450
2026-01-21T13:39:05.011 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:39:05.011 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:39:05.011 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:39:14.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:39:24.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:39:34.051 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:39:44.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:39:54.078 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:40:04.092 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:40:04.094 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:39:57.738824
2026-01-21T13:40:04.094 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:40:04.095 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:40:04.095 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:40:13.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:40:23.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:40:33.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:40:43.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:40:53.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:41:03.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:41:03.177 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:40:57.880198
2026-01-21T13:41:03.178 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:41:03.178 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:41:03.178 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:41:12.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:41:22.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:41:32.218 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:41:42.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:41:52.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:42:02.262 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:42:02.264 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:41:58.021291
2026-01-21T13:42:02.265 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:42:02.265 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:42:02.265 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:42:11.278 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:42:21.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:42:31.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:42:41.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:42:51.335 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:43:01.348 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:43:01.349 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:42:58.162940
2026-01-21T13:43:01.349 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:43:01.349 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:43:01.349 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:43:10.361 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:43:20.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:43:30.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:43:40.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:43:50.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:44:00.434 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:44:00.436 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:43:58.303670
2026-01-21T13:44:00.436 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:44:00.437 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:44:00.437 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:44:09.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:44:19.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:44:29.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:44:39.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:44:49.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:44:59.522 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:44:59.524 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:44:58.441589
2026-01-21T13:44:59.525 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:44:59.525 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:44:59.525 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:45:08.537 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:45:18.552 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:45:28.568 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:45:38.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:45:48.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:45:58.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:45:58.615 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:44:58.441589
2026-01-21T13:45:58.615 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:45:58.615 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:45:58.615 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:46:07.627 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:46:17.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:46:27.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:46:37.672 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:46:47.687 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:46:57.700 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:46:57.703 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:45:58.581541
2026-01-21T13:46:57.703 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:46:57.703 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:46:57.703 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:47:06.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:47:16.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:47:26.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:47:36.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:47:46.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:47:56.781 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:47:56.784 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:46:58.724351
2026-01-21T13:47:56.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:47:56.784 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:47:56.784 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:48:05.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:48:15.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:48:25.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:48:35.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:48:45.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:48:55.872 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:48:55.874 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:47:58.864859
2026-01-21T13:48:55.875 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:48:55.875 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:48:55.875 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:49:04.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:49:14.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:49:24.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:49:34.930 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:49:44.945 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:49:54.956 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:49:54.958 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:48:59.003792
2026-01-21T13:49:54.959 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:49:54.959 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:49:54.959 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:50:03.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:50:13.983 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:50:23.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:50:34.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:50:44.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:50:54.034 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:50:54.037 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:49:59.144047
2026-01-21T13:50:54.037 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:50:54.037 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:50:54.037 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:51:03.049 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:51:13.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:51:23.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:51:33.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:51:43.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:51:53.159 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:51:53.162 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:50:59.285942
2026-01-21T13:51:53.162 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:51:53.162 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:51:53.162 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:52:02.174 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:52:12.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:52:22.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:52:32.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:52:42.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:52:52.247 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:52:52.249 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:51:59.428148
2026-01-21T13:52:52.250 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:52:52.250 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:52:52.250 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:53:01.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:53:11.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:53:21.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:53:31.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:53:41.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:53:51.339 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:53:51.340 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:52:59.573241
2026-01-21T13:53:51.340 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:53:51.340 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:53:51.340 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:54:00.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:54:10.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:54:20.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:54:30.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:54:40.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:54:50.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:54:50.430 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:53:59.711503
2026-01-21T13:54:50.431 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:54:50.431 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:54:50.431 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:54:59.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:55:09.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:55:19.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:55:29.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:55:39.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:55:49.522 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:55:49.525 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:54:59.853810
2026-01-21T13:55:49.525 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:55:49.525 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:55:49.525 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:55:58.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:56:08.554 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:56:18.569 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:56:28.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:56:38.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:56:48.617 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:56:48.619 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:55:59.999751
2026-01-21T13:56:48.619 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:56:48.619 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:56:48.619 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:56:57.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:57:07.647 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:57:17.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:57:27.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:57:37.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:57:47.708 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:57:47.710 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:57:00.139978
2026-01-21T13:57:47.711 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:57:47.711 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:57:47.711 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:57:56.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:58:06.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:58:16.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:58:26.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:58:36.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:58:46.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:58:46.790 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:58:00.279991
2026-01-21T13:58:46.791 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:58:46.791 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:58:46.791 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:58:55.803 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T13:59:05.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T13:59:15.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T13:59:25.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T13:59:35.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T13:59:45.876 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T13:59:45.879 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T13:59:00.423096
2026-01-21T13:59:45.879 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T13:59:45.879 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T13:59:45.879 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T13:59:54.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:00:04.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:00:14.922 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:00:24.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:00:34.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:00:44.967 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:00:44.970 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:00:00.563943
2026-01-21T14:00:44.970 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:00:44.970 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:00:44.970 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:00:53.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:01:04.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:01:14.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:01:24.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:01:34.041 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:01:44.055 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:01:44.057 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:01:00.704880
2026-01-21T14:01:44.057 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:01:44.058 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:01:44.058 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:01:53.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:02:03.083 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:02:13.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:02:23.111 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:02:33.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:02:43.140 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:02:43.143 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:02:00.843783
2026-01-21T14:02:43.143 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:02:43.143 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:02:43.143 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:02:52.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:03:02.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:03:12.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:03:22.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:03:32.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:03:42.228 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:03:42.231 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:03:00.986888
2026-01-21T14:03:42.231 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:03:42.231 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:03:42.231 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:03:51.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:04:01.259 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:04:11.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:04:21.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:04:31.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:04:41.319 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:04:41.321 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:04:01.127208
2026-01-21T14:04:41.368 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:04:41.368 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:04:41.369 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:04:50.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:05:00.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:05:10.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:05:20.428 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:05:30.444 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:05:40.459 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:05:40.462 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:05:01.266598
2026-01-21T14:05:40.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:05:40.462 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:05:40.462 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:05:49.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:05:59.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:06:09.506 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:06:19.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:06:29.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:06:39.554 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:06:39.557 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:06:01.406955
2026-01-21T14:06:39.557 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:06:39.557 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:06:39.557 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:06:48.572 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:06:58.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:07:08.603 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:07:18.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:07:28.632 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:07:38.648 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:07:38.650 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:07:01.549506
2026-01-21T14:07:38.651 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:07:38.651 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:07:38.651 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:07:47.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:07:57.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:08:07.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:08:17.710 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:08:27.724 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:08:37.735 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:08:37.737 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:08:01.699362
2026-01-21T14:08:37.738 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:08:37.738 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:08:37.738 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:08:46.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:08:56.765 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:09:06.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:09:16.793 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:09:26.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:09:36.819 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:09:36.821 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:09:01.841191
2026-01-21T14:09:36.822 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:09:36.822 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:09:36.822 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:09:45.835 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:09:55.852 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:10:05.866 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:10:15.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:10:25.896 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:10:35.909 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:10:35.910 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:10:01.983434
2026-01-21T14:10:35.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:10:35.910 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:10:35.910 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:10:44.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:10:54.939 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:11:04.955 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:11:14.969 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:11:24.983 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:11:34.997 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:11:35.000 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:11:02.133464
2026-01-21T14:11:35.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:11:35.000 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:11:35.000 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:11:44.012 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:11:54.026 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:12:04.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:12:14.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:12:24.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:12:34.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:12:34.082 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:12:02.277294
2026-01-21T14:12:34.082 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:12:34.082 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:12:34.082 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:12:43.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:12:53.108 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:13:03.121 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:13:13.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:13:23.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:13:33.161 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:13:33.163 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:13:02.417502
2026-01-21T14:13:33.163 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:13:33.163 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:13:33.163 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:13:42.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:13:52.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:14:02.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:14:12.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:14:22.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:14:32.249 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:14:32.251 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:14:02.561047
2026-01-21T14:14:32.251 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:14:32.252 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:14:32.252 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:14:41.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:14:51.281 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:15:01.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:15:11.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:15:21.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:15:31.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:15:31.344 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:15:02.700495
2026-01-21T14:15:31.344 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:15:31.344 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:15:31.344 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:15:40.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:15:50.372 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:16:00.386 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:16:10.402 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:16:20.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:16:30.432 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:16:30.435 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:16:02.840282
2026-01-21T14:16:30.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:16:30.435 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:16:30.435 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:16:39.448 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:16:49.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:16:59.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:17:09.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:17:19.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:17:29.523 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:17:29.542 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:17:02.994020
2026-01-21T14:17:29.542 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:17:29.542 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:17:29.542 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:17:38.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:17:48.569 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:17:58.583 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:18:08.599 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:18:18.615 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:18:28.631 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:18:28.633 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:18:03.133911
2026-01-21T14:18:28.633 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:18:28.633 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:18:28.634 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:18:37.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:18:47.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:18:57.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:19:07.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:19:17.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:19:27.723 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:19:27.725 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:19:03.275140
2026-01-21T14:19:27.725 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:19:27.726 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:19:27.726 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:19:36.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:19:46.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:19:56.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:20:06.780 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:20:16.793 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:20:26.805 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:20:26.807 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:20:03.416871
2026-01-21T14:20:26.808 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:20:26.808 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:20:26.808 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:20:35.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:20:45.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:20:55.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:21:05.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:21:15.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:21:25.888 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:21:25.891 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:21:03.563953
2026-01-21T14:21:25.891 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:21:25.891 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:21:25.891 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:21:34.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:21:44.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:21:54.930 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:22:04.945 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:22:14.960 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:22:24.995 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:22:24.997 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:22:03.703240
2026-01-21T14:22:24.998 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:22:24.998 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:22:24.998 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:22:34.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:22:44.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:22:54.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:23:04.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:23:14.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:23:24.084 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:23:24.106 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:23:03.845539
2026-01-21T14:23:24.107 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:23:24.107 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:23:24.107 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:23:33.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:23:43.135 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:23:53.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:24:03.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:24:13.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:24:23.192 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:24:23.195 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:24:03.986469
2026-01-21T14:24:23.195 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:24:23.195 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:24:23.195 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:24:32.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:24:42.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:24:52.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:25:02.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:25:12.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:25:22.282 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:25:22.284 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:25:04.126488
2026-01-21T14:25:22.285 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:25:22.285 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:25:22.285 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:25:31.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:25:41.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:25:51.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:26:01.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:26:11.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:26:21.376 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:26:21.378 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:26:04.266109
2026-01-21T14:26:21.378 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:26:21.378 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:26:21.379 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:26:30.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:26:40.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:26:50.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:27:00.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:27:10.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:27:20.468 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:27:20.470 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:27:04.406297
2026-01-21T14:27:20.470 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:27:20.471 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:27:20.471 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:27:29.485 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:27:39.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:27:49.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:27:59.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:28:09.544 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:28:19.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:28:19.562 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:28:04.546851
2026-01-21T14:28:19.562 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:28:19.562 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:28:19.563 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:28:28.577 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:28:38.592 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:28:48.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:28:58.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:29:08.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:29:18.654 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:29:18.657 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:29:04.690150
2026-01-21T14:29:18.657 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:29:18.657 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:29:18.657 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:29:27.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:29:37.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:29:47.701 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:29:57.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:30:07.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:30:17.742 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:30:17.744 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:30:04.835248
2026-01-21T14:30:17.745 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:30:17.745 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:30:17.745 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:30:26.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:30:36.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:30:46.784 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:30:56.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:31:06.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:31:16.827 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:31:16.829 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:31:04.976861
2026-01-21T14:31:16.830 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:31:16.830 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:31:16.830 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:31:25.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:31:35.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:31:45.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:31:55.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:32:05.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:32:15.916 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:32:15.918 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:32:05.116346
2026-01-21T14:32:15.918 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:32:15.918 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:32:15.918 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:32:24.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:32:34.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:32:44.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:32:54.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:33:04.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:33:15.005 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:33:15.007 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:33:05.256283
2026-01-21T14:33:15.007 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:33:15.007 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:33:15.007 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:33:24.021 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:33:34.035 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:33:44.050 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:33:54.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:34:04.079 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:34:14.093 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:34:14.096 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:34:05.397626
2026-01-21T14:34:14.097 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:34:14.097 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:34:14.097 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:34:23.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:34:33.124 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:34:43.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:34:53.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:35:03.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:35:13.182 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:35:13.184 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:35:05.541565
2026-01-21T14:35:13.185 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:35:13.185 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:35:13.185 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:35:22.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:35:32.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:35:42.227 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:35:52.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:36:02.257 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:36:12.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:36:12.273 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:36:05.681832
2026-01-21T14:36:12.273 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:36:12.273 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:36:12.273 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:36:21.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:36:31.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:36:41.318 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:36:51.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:37:01.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:37:11.365 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:37:11.387 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:37:05.823836
2026-01-21T14:37:11.387 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:37:11.387 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:37:11.388 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:37:20.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:37:30.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:37:40.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:37:50.447 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:38:00.462 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:38:10.478 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:38:10.480 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:38:05.966615
2026-01-21T14:38:10.481 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:38:10.481 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:38:10.481 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:38:19.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:38:29.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:38:39.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:38:49.541 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:38:59.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:39:09.573 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:39:09.575 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:39:06.107562
2026-01-21T14:39:09.575 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:39:09.576 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:39:09.576 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:39:18.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:39:28.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:39:38.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:39:48.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:39:58.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:40:08.667 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:40:08.670 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:40:06.248126
2026-01-21T14:40:08.670 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:40:08.670 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:40:08.670 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:40:17.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:40:27.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:40:37.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:40:47.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:40:57.744 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:41:07.758 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:41:07.760 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:41:06.388891
2026-01-21T14:41:07.760 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:41:07.760 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:41:07.760 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:41:16.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:41:26.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:41:36.801 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:41:46.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:41:56.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:42:06.843 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:42:06.846 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:41:06.388891
2026-01-21T14:42:06.846 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:42:06.846 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:42:06.846 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:42:15.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:42:25.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:42:35.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:42:45.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:42:55.919 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:43:05.935 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:43:05.937 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:42:06.530095
2026-01-21T14:43:05.937 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:43:05.938 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:43:05.938 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:43:14.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:43:24.966 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:43:34.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:43:44.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:43:55.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:44:05.021 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:44:05.023 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:43:06.672830
2026-01-21T14:44:05.024 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:44:05.024 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:44:05.024 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:44:14.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:44:24.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:44:34.068 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:44:44.080 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:44:54.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:45:04.111 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:45:04.113 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:44:06.814799
2026-01-21T14:45:04.113 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:45:04.114 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:45:04.114 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:45:13.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:45:23.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:45:33.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:45:43.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:45:53.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:46:03.196 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:46:03.198 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:45:06.953726
2026-01-21T14:46:03.206 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:46:03.207 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:46:03.207 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:46:12.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:46:22.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:46:32.250 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:46:42.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:46:52.281 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:47:02.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:47:02.299 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:46:07.093574
2026-01-21T14:47:02.300 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:47:02.300 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:47:02.300 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:47:11.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:47:21.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:47:31.344 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:47:41.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:47:51.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:48:01.390 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:48:01.392 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:47:07.234314
2026-01-21T14:48:01.393 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:48:01.393 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:48:01.393 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:48:10.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:48:20.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:48:30.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:48:40.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:48:50.468 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:49:00.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:49:00.487 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:48:07.375396
2026-01-21T14:49:00.487 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:49:00.487 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:49:00.488 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:49:09.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:49:19.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:49:29.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:49:39.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:49:49.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:49:59.577 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:49:59.580 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:49:07.525080
2026-01-21T14:49:59.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:49:59.581 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:49:59.581 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:50:08.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:50:18.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:50:28.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:50:38.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:50:48.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:50:58.672 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:50:58.675 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:50:07.665479
2026-01-21T14:50:58.675 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:50:58.675 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:50:58.675 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:51:07.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:51:17.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:51:27.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:51:37.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:51:47.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:51:57.759 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:51:57.761 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:51:07.805579
2026-01-21T14:51:57.761 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:51:57.761 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:51:57.762 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:52:06.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:52:16.786 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:52:26.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:52:36.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:52:46.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:52:56.838 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:52:56.839 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:52:07.947146
2026-01-21T14:52:56.839 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:52:56.839 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:52:56.839 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:53:05.852 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:53:15.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:53:25.880 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:53:35.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:53:45.909 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:53:55.924 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:53:55.948 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:53:08.110666
2026-01-21T14:53:55.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:53:55.948 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:53:55.948 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:54:04.960 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:54:14.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:54:24.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:54:35.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:54:45.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:54:55.030 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:54:55.032 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:54:08.251803
2026-01-21T14:54:55.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:54:55.033 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:54:55.033 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:55:04.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:55:14.059 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:55:24.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:55:34.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:55:44.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:55:54.117 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:55:54.119 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:55:08.394494
2026-01-21T14:55:54.119 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:55:54.119 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:55:54.119 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:56:03.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:56:13.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:56:23.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:56:33.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:56:43.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:56:53.204 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:56:53.207 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:56:08.532335
2026-01-21T14:56:53.208 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:56:53.208 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:56:53.208 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:57:02.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:57:12.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:57:22.250 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:57:32.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:57:42.278 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:57:52.293 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:57:52.298 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:57:08.672305
2026-01-21T14:57:52.298 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:57:52.299 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:57:52.299 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:58:01.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:58:11.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:58:21.341 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:58:31.354 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:58:41.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:58:51.385 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:58:51.387 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:58:08.812308
2026-01-21T14:58:51.388 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:58:51.388 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:58:51.388 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:59:00.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T14:59:10.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T14:59:20.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T14:59:30.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T14:59:40.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T14:59:50.472 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T14:59:50.475 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T14:59:08.954442
2026-01-21T14:59:50.475 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T14:59:50.475 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T14:59:50.475 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T14:59:59.488 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:00:09.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:00:19.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:00:29.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:00:39.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:00:49.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:00:49.562 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:00:09.094001
2026-01-21T15:00:49.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:00:49.563 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:00:49.563 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:00:58.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:01:08.590 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:01:18.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:01:28.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:01:38.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:01:48.652 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:01:48.655 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:01:09.234919
2026-01-21T15:01:48.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:01:48.655 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:01:48.656 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:01:57.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:02:07.683 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:02:17.697 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:02:27.712 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:02:37.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:02:47.738 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:02:47.741 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:02:09.372247
2026-01-21T15:02:47.741 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:02:47.742 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:02:47.742 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:02:56.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:03:06.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:03:16.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:03:26.791 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:03:36.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:03:46.816 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:03:46.819 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:03:09.513523
2026-01-21T15:03:46.819 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:03:46.819 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:03:46.820 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:03:55.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:04:05.845 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:04:15.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:04:25.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:04:35.889 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:04:45.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:04:45.904 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:04:09.652628
2026-01-21T15:04:45.904 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:04:45.904 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:04:45.904 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:04:54.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:05:04.931 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:05:14.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:05:24.960 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:05:34.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:05:44.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:05:44.990 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:05:09.793805
2026-01-21T15:05:44.991 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:05:44.991 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:05:44.991 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:05:54.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:06:04.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:06:14.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:06:24.046 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:06:34.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:06:44.075 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:06:44.077 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:06:09.933169
2026-01-21T15:06:44.078 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:06:44.078 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:06:44.078 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:06:53.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:07:03.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:07:13.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:07:23.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:07:33.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:07:43.166 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:07:43.168 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:07:10.076082
2026-01-21T15:07:43.169 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:07:43.169 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:07:43.169 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:07:52.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:08:02.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:08:12.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:08:22.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:08:32.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:08:42.257 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:08:42.259 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:08:10.216718
2026-01-21T15:08:42.259 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:08:42.259 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:08:42.260 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:08:51.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:09:01.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:09:11.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:09:21.317 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:09:31.332 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:09:41.347 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:09:41.349 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:09:10.360414
2026-01-21T15:09:41.349 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:09:41.350 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:09:41.350 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:09:50.363 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:10:00.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:10:10.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:10:20.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:10:30.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:10:40.440 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:10:40.443 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:10:10.502018
2026-01-21T15:10:40.443 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:10:40.443 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:10:40.444 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:10:49.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:10:59.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:11:09.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:11:19.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:11:29.517 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:11:39.533 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:11:39.535 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:11:10.643852
2026-01-21T15:11:39.582 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:11:39.582 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:11:39.582 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:11:48.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:11:58.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:12:08.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:12:18.640 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:12:28.654 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:12:38.669 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:12:38.672 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:12:10.782720
2026-01-21T15:12:38.672 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:12:38.672 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:12:38.672 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:12:47.686 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:12:57.702 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:13:07.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:13:17.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:13:27.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:13:37.758 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:13:37.760 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:13:10.921318
2026-01-21T15:13:37.760 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:13:37.761 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:13:37.761 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:13:46.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:13:56.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:14:06.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:14:16.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:14:26.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:14:36.842 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:14:36.844 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:14:11.061018
2026-01-21T15:14:36.845 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:14:36.845 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:14:36.845 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:14:45.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:14:55.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:15:05.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:15:15.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:15:25.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:15:35.929 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:15:35.932 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:15:11.203693
2026-01-21T15:15:35.932 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:15:35.933 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:15:35.933 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:15:44.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:15:54.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:16:04.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:16:14.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:16:25.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:16:35.017 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:16:35.019 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:16:11.344608
2026-01-21T15:16:35.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:16:35.019 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:16:35.019 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:16:44.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:16:54.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:17:04.059 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:17:14.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:17:24.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:17:34.102 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:17:34.104 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:17:11.486811
2026-01-21T15:17:34.104 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:17:34.105 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:17:34.105 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:17:43.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:17:53.135 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:18:03.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:18:13.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:18:23.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:18:33.189 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:18:33.190 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:18:11.639784
2026-01-21T15:18:33.190 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:18:33.190 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:18:33.190 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:18:42.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:18:52.217 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:19:02.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:19:12.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:19:22.260 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:19:32.276 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:19:32.278 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:19:11.780081
2026-01-21T15:19:32.278 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:19:32.278 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:19:32.278 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:19:41.292 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:19:51.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:20:01.322 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:20:11.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:20:21.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:20:31.368 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:20:31.370 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:20:11.919227
2026-01-21T15:20:31.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:20:31.371 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:20:31.371 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:20:40.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:20:50.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:21:00.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:21:10.428 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:21:20.444 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:21:30.458 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:21:30.460 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:21:12.059630
2026-01-21T15:21:30.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:21:30.461 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:21:30.461 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:21:39.474 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:21:49.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:21:59.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:22:09.517 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:22:19.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:22:29.546 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:22:29.548 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:22:12.201414
2026-01-21T15:22:29.549 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:22:29.549 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:22:29.549 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:22:38.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:22:48.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:22:58.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:23:08.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:23:18.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:23:28.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:23:28.644 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:23:12.342905
2026-01-21T15:23:28.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:23:28.644 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:23:28.644 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:23:37.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:23:47.672 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:23:57.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:24:07.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:24:17.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:24:27.735 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:24:27.737 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:24:12.483525
2026-01-21T15:24:27.738 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:24:27.738 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:24:27.738 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:24:36.750 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:24:46.764 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:24:56.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:25:06.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:25:16.803 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:25:26.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:25:26.820 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:25:12.624855
2026-01-21T15:25:26.820 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:25:26.820 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:25:26.820 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:25:35.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:25:45.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:25:55.863 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:26:05.878 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:26:15.894 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:26:25.906 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:26:25.909 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:26:12.765532
2026-01-21T15:26:25.909 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:26:25.909 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:26:25.909 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:26:34.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:26:44.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:26:54.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:27:04.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:27:14.982 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:27:24.998 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:27:25.000 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:27:12.906199
2026-01-21T15:27:25.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:27:25.000 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:27:25.000 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:27:34.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:27:44.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:27:54.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:28:04.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:28:14.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:28:24.082 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:28:24.084 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:28:13.045627
2026-01-21T15:28:24.085 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:28:24.085 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:28:24.085 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:28:33.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:28:43.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:28:53.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:29:03.142 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:29:13.156 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:29:23.170 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:29:23.172 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:29:13.196406
2026-01-21T15:29:23.173 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:29:23.173 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:29:23.173 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:29:32.186 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:29:42.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:29:52.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:30:02.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:30:12.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:30:22.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:30:22.255 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:30:13.336590
2026-01-21T15:30:22.255 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:30:22.256 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:30:22.256 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:30:31.269 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:30:41.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:30:51.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:31:01.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:31:11.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:31:21.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:31:21.342 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:31:13.475849
2026-01-21T15:31:21.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:31:21.342 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:31:21.342 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:31:30.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:31:40.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:31:50.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:32:00.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:32:10.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:32:20.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:32:20.431 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:32:13.616339
2026-01-21T15:32:20.431 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:32:20.431 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:32:20.431 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:32:29.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:32:39.459 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:32:49.475 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:32:59.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:33:09.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:33:19.517 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:33:19.520 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:33:13.758113
2026-01-21T15:33:19.520 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:33:19.520 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:33:19.520 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:33:28.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:33:38.549 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:33:48.564 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:33:58.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:34:08.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:34:18.609 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:34:18.611 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:34:13.900901
2026-01-21T15:34:18.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:34:18.612 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:34:18.612 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:34:27.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:34:37.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:34:47.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:34:57.674 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:35:07.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:35:17.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:35:17.707 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:35:14.042985
2026-01-21T15:35:17.707 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:35:17.707 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:35:17.707 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:35:26.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:35:36.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:35:46.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:35:56.765 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:36:06.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:36:16.793 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:36:16.796 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:36:14.182302
2026-01-21T15:36:16.796 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:36:16.796 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:36:16.796 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:36:25.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:36:35.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:36:45.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:36:55.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:37:05.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:37:15.884 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:37:15.887 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:37:14.326696
2026-01-21T15:37:15.887 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:37:15.887 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:37:15.887 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:37:24.899 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:37:34.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:37:44.931 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:37:54.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:38:04.960 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:38:14.975 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:38:14.978 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:37:14.326696
2026-01-21T15:38:14.978 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:38:14.978 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:38:14.978 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:38:23.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:38:34.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:38:44.015 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:38:54.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:39:04.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:39:14.056 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:39:14.058 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:38:14.466270
2026-01-21T15:39:14.058 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:39:14.058 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:39:14.059 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:39:23.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:39:33.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:39:43.103 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:39:53.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:40:03.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:40:13.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:40:13.147 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:39:14.606050
2026-01-21T15:40:13.147 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:40:13.148 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:40:13.148 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:40:22.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:40:32.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:40:42.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:40:52.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:41:02.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:41:12.232 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:41:12.233 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:40:14.749783
2026-01-21T15:41:12.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:41:12.234 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:41:12.234 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:41:21.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:41:31.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:41:41.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:41:51.292 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:42:01.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:42:11.323 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:42:11.325 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:41:14.892850
2026-01-21T15:42:11.325 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:42:11.325 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:42:11.326 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:42:20.338 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:42:30.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:42:40.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:42:50.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:43:00.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:43:10.413 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:43:10.415 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:42:15.033670
2026-01-21T15:43:10.416 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:43:10.416 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:43:10.416 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:43:19.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:43:29.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:43:39.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:43:49.475 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:43:59.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:44:09.503 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:44:09.505 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:43:15.171831
2026-01-21T15:44:09.506 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:44:09.506 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:44:09.506 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:44:18.520 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:44:28.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:44:38.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:44:48.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:44:58.580 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:45:08.595 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:45:08.597 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:44:15.310186
2026-01-21T15:45:08.598 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:45:08.598 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:45:08.598 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:45:17.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:45:27.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:45:37.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:45:47.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:45:57.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:46:07.679 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:46:07.682 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:45:15.452877
2026-01-21T15:46:07.682 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:46:07.682 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:46:07.682 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:46:16.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:46:26.706 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:46:36.723 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:46:46.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:46:56.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:47:06.766 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:47:06.768 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:46:15.595386
2026-01-21T15:47:06.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:47:06.768 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:47:06.769 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:47:15.781 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:47:25.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:47:35.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:47:45.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:47:55.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:48:05.851 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:48:05.853 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:47:15.736700
2026-01-21T15:48:05.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:48:05.854 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:48:05.854 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:48:14.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:48:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:48:34.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:48:44.906 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:48:54.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:49:04.936 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:49:04.939 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:48:15.880380
2026-01-21T15:49:04.939 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:49:04.939 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:49:04.939 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:49:13.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:49:23.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:49:33.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:49:43.995 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:49:54.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:50:04.024 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:50:04.026 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:49:16.021376
2026-01-21T15:50:04.026 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:50:04.026 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:50:04.026 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:50:13.038 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:50:23.051 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:50:33.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:50:43.080 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:50:53.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:51:03.109 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:51:03.112 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:50:16.160046
2026-01-21T15:51:03.112 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:51:03.112 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:51:03.112 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:51:12.124 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:51:22.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:51:32.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:51:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:51:52.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:52:02.193 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:52:02.196 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:51:16.302193
2026-01-21T15:52:02.196 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:52:02.196 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:52:02.196 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:52:11.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:52:21.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:52:31.237 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:52:41.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:52:51.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:53:01.282 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:53:01.315 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:52:16.441326
2026-01-21T15:53:01.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:53:01.315 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:53:01.315 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:53:10.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:53:20.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:53:30.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:53:40.376 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:53:50.392 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:54:00.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:54:00.409 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:53:16.586719
2026-01-21T15:54:00.410 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:54:00.410 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:54:00.410 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:54:09.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:54:19.439 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:54:29.455 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:54:39.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:54:49.485 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:54:59.500 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:54:59.503 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:54:16.729726
2026-01-21T15:54:59.503 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:54:59.503 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:54:59.503 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:55:08.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:55:18.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:55:28.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:55:38.560 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:55:48.575 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:55:58.591 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:55:58.616 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:55:16.870132
2026-01-21T15:55:58.617 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:55:58.617 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:55:58.617 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:56:07.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:56:17.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:56:27.658 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:56:37.674 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:56:47.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:56:57.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:56:57.706 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:56:17.011002
2026-01-21T15:56:57.707 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:56:57.707 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:56:57.707 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:57:06.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:57:16.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:57:26.749 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:57:36.762 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:57:46.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:57:56.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:57:56.791 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:57:17.150943
2026-01-21T15:57:56.791 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:57:56.791 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:57:56.791 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:58:05.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:58:15.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:58:25.830 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:58:35.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:58:45.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:58:55.872 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:58:55.893 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:58:17.290056
2026-01-21T15:58:55.893 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:58:55.893 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:58:55.894 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T15:59:04.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T15:59:14.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T15:59:24.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T15:59:34.949 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T15:59:44.962 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T15:59:54.977 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T15:59:54.979 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T15:59:17.434323
2026-01-21T15:59:54.980 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T15:59:54.980 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T15:59:54.980 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:00:03.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:00:14.007 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:00:24.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:00:34.036 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:00:44.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:00:54.065 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:00:54.068 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:00:17.573775
2026-01-21T16:00:54.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:00:54.068 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:00:54.068 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:01:03.081 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:01:13.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:01:23.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:01:33.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:01:43.141 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:01:53.155 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:01:53.177 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:01:17.715793
2026-01-21T16:01:53.177 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:01:53.177 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:01:53.178 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:02:02.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:02:12.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:02:22.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:02:32.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:02:42.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:02:52.264 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:02:52.266 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:02:17.857272
2026-01-21T16:02:52.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:02:52.266 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:02:52.266 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:03:01.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:03:11.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:03:21.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:03:31.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:03:41.339 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:03:51.354 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:03:51.357 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:03:18.009571
2026-01-21T16:03:51.357 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:03:51.357 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:03:51.357 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:04:00.371 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:04:10.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:04:20.400 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:04:30.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:04:40.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:04:50.448 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:04:50.450 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:04:18.151401
2026-01-21T16:04:50.451 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:04:50.451 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:04:50.451 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:04:59.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:05:09.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:05:19.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:05:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:05:39.523 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:05:49.539 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:05:49.541 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:05:18.294307
2026-01-21T16:05:49.541 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:05:49.541 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:05:49.541 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:05:58.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:06:08.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:06:18.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:06:28.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:06:38.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:06:48.630 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:06:48.633 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:06:18.433708
2026-01-21T16:06:48.633 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:06:48.633 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:06:48.633 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:06:57.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:07:07.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:07:17.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:07:27.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:07:37.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:07:47.724 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:07:47.727 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:07:18.575974
2026-01-21T16:07:47.727 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:07:47.727 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:07:47.728 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:07:56.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:08:06.756 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:08:16.769 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:08:26.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:08:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:08:46.810 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:08:46.812 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:08:18.717284
2026-01-21T16:08:46.813 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:08:46.813 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:08:46.813 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:08:55.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:09:05.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:09:15.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:09:25.870 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:09:35.885 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:09:45.899 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:09:45.902 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:09:18.859323
2026-01-21T16:09:45.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:09:45.902 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:09:45.902 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:09:54.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:10:04.930 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:10:14.945 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:10:24.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:10:34.973 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:10:44.989 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:10:44.992 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:10:18.998441
2026-01-21T16:10:44.992 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:10:44.992 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:10:44.992 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:10:54.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:11:04.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:11:14.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:11:24.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:11:34.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:11:44.074 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:11:44.076 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:11:19.138502
2026-01-21T16:11:44.076 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:11:44.076 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:11:44.077 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:11:53.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:12:03.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:12:13.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:12:23.132 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:12:33.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:12:43.163 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:12:43.165 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:12:19.278279
2026-01-21T16:12:43.166 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:12:43.166 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:12:43.166 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:12:52.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:13:02.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:13:12.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:13:22.222 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:13:32.237 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:13:42.251 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:13:42.253 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:13:19.420057
2026-01-21T16:13:42.254 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:13:42.254 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:13:42.254 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:13:51.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:14:01.281 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:14:11.294 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:14:21.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:14:31.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:14:41.337 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:14:41.340 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:14:19.560190
2026-01-21T16:14:41.340 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:14:41.340 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:14:41.340 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:14:50.354 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:15:00.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:15:10.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:15:20.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:15:30.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:15:40.430 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:15:40.432 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:15:19.699012
2026-01-21T16:15:40.433 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:15:40.433 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:15:40.433 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:15:49.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:15:59.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:16:09.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:16:19.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:16:29.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:16:39.523 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:16:39.525 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:16:19.839481
2026-01-21T16:16:39.526 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:16:39.526 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:16:39.526 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:16:48.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:16:58.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:17:08.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:17:18.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:17:28.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:17:38.615 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:17:38.617 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:17:19.980664
2026-01-21T16:17:38.617 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:17:38.618 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:17:38.618 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:17:47.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:17:57.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:18:07.661 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:18:17.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:18:27.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:18:37.709 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:18:37.711 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:18:20.122923
2026-01-21T16:18:37.711 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:18:37.711 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:18:37.711 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:18:46.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:18:56.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:19:06.756 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:19:16.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:19:26.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:19:36.803 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:19:36.805 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:19:20.264636
2026-01-21T16:19:36.805 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:19:36.805 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:19:36.805 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:19:45.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:19:55.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:20:05.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:20:15.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:20:25.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:20:35.893 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:20:35.895 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:20:20.416984
2026-01-21T16:20:35.896 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:20:35.896 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:20:35.896 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:20:44.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:20:54.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:21:04.935 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:21:14.949 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:21:24.963 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:21:34.977 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:21:34.979 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:21:20.567008
2026-01-21T16:21:34.980 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:21:34.980 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:21:34.980 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:21:43.994 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:21:54.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:22:04.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:22:14.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:22:24.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:22:34.066 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:22:34.069 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:22:20.707359
2026-01-21T16:22:34.069 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:22:34.069 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:22:34.069 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:22:43.082 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:22:53.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:23:03.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:23:13.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:23:23.143 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:23:33.156 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:23:33.158 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:23:20.848182
2026-01-21T16:23:33.158 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:23:33.158 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:23:33.158 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:23:42.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:23:52.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:24:02.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:24:12.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:24:22.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:24:32.243 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:24:32.246 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:24:20.989185
2026-01-21T16:24:32.246 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:24:32.246 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:24:32.246 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:24:41.258 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:24:51.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:25:01.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:25:11.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:25:21.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:25:31.335 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:25:31.337 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:25:21.130391
2026-01-21T16:25:31.337 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:25:31.338 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:25:31.338 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:25:40.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:25:50.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:26:00.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:26:10.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:26:20.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:26:30.426 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:26:30.428 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:26:21.269724
2026-01-21T16:26:30.429 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:26:30.429 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:26:30.429 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:26:39.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:26:49.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:26:59.473 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:27:09.488 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:27:19.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:27:29.516 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:27:29.535 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:27:21.410627
2026-01-21T16:27:29.535 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:27:29.535 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:27:29.535 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:27:38.549 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:27:48.564 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:27:58.580 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:28:08.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:28:18.612 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:28:28.627 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:28:28.629 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:28:21.549611
2026-01-21T16:28:28.629 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:28:28.629 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:28:28.630 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:28:37.643 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:28:47.658 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:28:57.674 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:29:07.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:29:17.706 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:29:27.721 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:29:27.724 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:29:21.699640
2026-01-21T16:29:27.724 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:29:27.724 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:29:27.724 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:29:36.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:29:46.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:29:56.770 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:30:06.786 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:30:16.801 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:30:26.817 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:30:26.819 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:30:21.838606
2026-01-21T16:30:26.819 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:30:26.819 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:30:26.819 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:30:35.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:30:45.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:30:55.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:31:05.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:31:15.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:31:25.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:31:25.913 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:31:21.978849
2026-01-21T16:31:25.913 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:31:25.913 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:31:25.913 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:31:34.928 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:31:44.942 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:31:54.956 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:32:04.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:32:14.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:32:25.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:32:25.002 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:32:22.119950
2026-01-21T16:32:25.002 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:32:25.002 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:32:25.003 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:32:34.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:32:44.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:32:54.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:33:04.059 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:33:14.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:33:24.088 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:33:24.091 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:33:22.265010
2026-01-21T16:33:24.091 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:33:24.092 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:33:24.092 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:33:33.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:33:43.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:33:53.135 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:34:03.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:34:13.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:34:23.178 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:34:23.181 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:34:22.404212
2026-01-21T16:34:23.188 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:34:23.188 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:34:23.189 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:34:32.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:34:42.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:34:52.229 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:35:02.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:35:12.258 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:35:22.274 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:35:22.276 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:34:22.404212
2026-01-21T16:35:22.276 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:35:22.276 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:35:22.277 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:35:31.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:35:41.304 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:35:51.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:36:01.335 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:36:11.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:36:21.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:36:21.369 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:35:22.547744
2026-01-21T16:36:21.369 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:36:21.369 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:36:21.369 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:36:30.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:36:40.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:36:50.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:37:00.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:37:10.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:37:20.461 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:37:20.463 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:36:22.688589
2026-01-21T16:37:20.464 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:37:20.464 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:37:20.464 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:37:29.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:37:39.493 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:37:49.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:37:59.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:38:09.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:38:19.554 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:38:19.556 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:37:22.832502
2026-01-21T16:38:19.557 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:38:19.557 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:38:19.557 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:38:28.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:38:38.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:38:48.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:38:58.616 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:39:08.632 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:39:18.649 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:39:18.651 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:38:22.973942
2026-01-21T16:39:18.652 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:39:18.652 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:39:18.652 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:39:27.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:39:37.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:39:47.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:39:57.712 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:40:07.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:40:17.743 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:40:17.745 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:39:23.114444
2026-01-21T16:40:17.746 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:40:17.746 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:40:17.746 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:40:26.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:40:36.776 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:40:46.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:40:56.807 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:41:06.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:41:16.838 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:41:16.841 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:40:23.254370
2026-01-21T16:41:16.841 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:41:16.841 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:41:16.842 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:41:25.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:41:35.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:41:45.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:41:55.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:42:05.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:42:15.932 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:42:15.935 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:41:23.393353
2026-01-21T16:42:15.935 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:42:15.935 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:42:15.935 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:42:24.949 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:42:34.963 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:42:44.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:42:54.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:43:05.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:43:15.020 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:43:15.021 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:42:23.533280
2026-01-21T16:43:15.021 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:43:15.021 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:43:15.021 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:43:24.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:43:34.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:43:44.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:43:54.076 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:44:04.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:44:14.105 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:44:14.122 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:43:23.672344
2026-01-21T16:44:14.122 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:44:14.123 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:44:14.123 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:44:23.135 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:44:33.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:44:43.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:44:53.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:45:03.195 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:45:13.209 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:45:13.229 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:44:23.811673
2026-01-21T16:45:13.229 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:45:13.229 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:45:13.229 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:45:22.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:45:32.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:45:42.272 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:45:52.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:46:02.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:46:12.321 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:46:12.343 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:45:23.954107
2026-01-21T16:46:12.344 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:46:12.344 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:46:12.344 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:46:21.358 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:46:31.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:46:41.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:46:51.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:47:01.422 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:47:11.438 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:47:11.457 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:46:24.093290
2026-01-21T16:47:11.458 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:47:11.458 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:47:11.458 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:47:20.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:47:30.482 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:47:40.493 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:47:50.503 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:48:00.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:48:10.524 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:48:10.548 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:47:24.231902
2026-01-21T16:48:10.548 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:48:10.548 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:48:10.549 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:48:19.559 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:48:29.569 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:48:39.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:48:49.590 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:48:59.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:49:09.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:49:09.636 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:48:24.373163
2026-01-21T16:49:09.636 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:49:09.636 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:49:09.636 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:49:18.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:49:28.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:49:38.668 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:49:48.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:49:58.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:50:08.700 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:50:08.721 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:49:24.516366
2026-01-21T16:50:08.722 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:50:08.722 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:50:08.722 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:50:17.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:50:27.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:50:37.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:50:47.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:50:57.778 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:51:07.790 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:51:07.809 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:50:24.660164
2026-01-21T16:51:07.810 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:51:07.810 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:51:07.810 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:51:16.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:51:26.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:51:36.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:51:46.849 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:51:56.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:52:06.871 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:52:06.892 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:51:24.801315
2026-01-21T16:52:06.892 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:52:06.892 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:52:06.892 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:52:15.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:52:25.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:52:35.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:52:45.931 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:52:55.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:53:05.961 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:53:05.981 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:52:24.940953
2026-01-21T16:53:05.982 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:53:05.982 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:53:05.982 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:53:14.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:53:25.011 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:53:35.026 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:53:45.041 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:53:55.056 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:54:05.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:54:05.091 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:53:25.084818
2026-01-21T16:54:05.091 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:54:05.092 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:54:05.092 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:54:14.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:54:24.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:54:34.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:54:44.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:54:54.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:55:04.180 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:55:04.198 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:54:25.223624
2026-01-21T16:55:04.198 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:55:04.198 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:55:04.199 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:55:13.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:55:23.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:55:33.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:55:43.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:55:53.272 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:56:03.288 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:56:03.291 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:55:25.362185
2026-01-21T16:56:03.291 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:56:03.291 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:56:03.292 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:56:12.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:56:22.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:56:32.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:56:42.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:56:52.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:57:02.385 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:57:02.408 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:56:25.501450
2026-01-21T16:57:02.408 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:57:02.408 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:57:02.408 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:57:11.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:57:21.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:57:31.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:57:41.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:57:51.482 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:58:01.498 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:58:01.519 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:57:25.643516
2026-01-21T16:58:01.519 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:58:01.520 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:58:01.520 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:58:10.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:58:20.549 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:58:30.566 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:58:40.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:58:50.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:59:00.614 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:59:00.635 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:58:25.783900
2026-01-21T16:59:00.635 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:59:00.635 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:59:00.636 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T16:59:09.650 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T16:59:19.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T16:59:29.680 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T16:59:39.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T16:59:49.711 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T16:59:59.727 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T16:59:59.729 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T16:59:25.925583
2026-01-21T16:59:59.730 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T16:59:59.730 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T16:59:59.730 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:00:08.744 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:00:18.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:00:28.776 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:00:38.798 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:00:48.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:00:58.827 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:00:58.845 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:00:26.063738
2026-01-21T17:00:58.845 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:00:58.846 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:00:58.846 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:01:07.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:01:17.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:01:27.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:01:37.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:01:47.914 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:01:57.929 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:01:57.952 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:01:26.215585
2026-01-21T17:01:57.953 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:01:57.953 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:01:57.953 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:02:06.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:02:16.980 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:02:26.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:02:37.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:02:47.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:02:57.040 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:02:57.058 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:02:26.353681
2026-01-21T17:02:57.058 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:02:57.059 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:02:57.059 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:03:06.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:03:16.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:03:26.100 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:03:36.115 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:03:46.128 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:03:56.143 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:03:56.162 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:03:26.493320
2026-01-21T17:03:56.162 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:03:56.163 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:03:56.163 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:04:05.174 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:04:15.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:04:25.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:04:35.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:04:45.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:04:55.249 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:04:55.269 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:04:26.634238
2026-01-21T17:04:55.270 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:04:55.270 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:04:55.270 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:05:04.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:05:14.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:05:24.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:05:34.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:05:44.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:05:54.361 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:05:54.380 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:05:26.775959
2026-01-21T17:05:54.381 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:05:54.381 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:05:54.381 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:06:03.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:06:13.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:06:23.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:06:33.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:06:43.455 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:06:53.471 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:06:53.490 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:06:26.925655
2026-01-21T17:06:53.521 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:06:53.521 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:06:53.521 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:07:02.535 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:07:12.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:07:22.566 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:07:32.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:07:42.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:07:52.614 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:07:52.631 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:07:27.067742
2026-01-21T17:07:52.632 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:07:52.632 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:07:52.632 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:08:01.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:08:11.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:08:21.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:08:31.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:08:41.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:08:51.724 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:08:51.743 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:08:27.209618
2026-01-21T17:08:51.744 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:08:51.744 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:08:51.744 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:09:00.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:09:10.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:09:20.790 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:09:30.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:09:40.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:09:50.834 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:09:50.856 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:09:27.354063
2026-01-21T17:09:50.856 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:09:50.857 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:09:50.857 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:09:59.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:10:09.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:10:19.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:10:29.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:10:39.930 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:10:49.945 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:10:49.947 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:10:27.493447
2026-01-21T17:10:49.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:10:49.948 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:10:49.948 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:10:58.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:11:08.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:11:18.988 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:11:29.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:11:39.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:11:49.028 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:11:49.047 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:11:27.634820
2026-01-21T17:11:49.047 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:11:49.047 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:11:49.047 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:11:58.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:12:08.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:12:18.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:12:28.103 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:12:38.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:12:48.133 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:12:48.150 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:12:27.775804
2026-01-21T17:12:48.151 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:12:48.151 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:12:48.151 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:12:57.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:13:07.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:13:17.194 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:13:27.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:13:37.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:13:47.239 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:13:47.258 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:13:27.916699
2026-01-21T17:13:47.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:13:47.258 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:13:47.258 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:13:56.271 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:14:06.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:14:16.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:14:26.318 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:14:36.333 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:14:46.348 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:14:46.371 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:14:28.056714
2026-01-21T17:14:46.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:14:46.371 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:14:46.372 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:14:55.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:15:05.400 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:15:15.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:15:25.430 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:15:35.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:15:45.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:15:45.484 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:15:28.196714
2026-01-21T17:15:45.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:15:45.484 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:15:45.484 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:15:54.498 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:16:04.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:16:14.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:16:24.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:16:34.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:16:44.571 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:16:44.573 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:16:28.335761
2026-01-21T17:16:44.574 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:16:44.574 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:16:44.574 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:16:53.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:17:03.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:17:13.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:17:23.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:17:33.650 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:17:43.666 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:17:43.688 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:17:28.476468
2026-01-21T17:17:43.688 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:17:43.688 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:17:43.688 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:17:52.703 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:18:02.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:18:12.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:18:22.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:18:32.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:18:42.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:18:42.808 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:18:28.616184
2026-01-21T17:18:42.808 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:18:42.808 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:18:42.808 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:18:51.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:19:01.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:19:11.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:19:21.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:19:31.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:19:41.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:19:41.924 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:19:28.757322
2026-01-21T17:19:41.925 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:19:41.925 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:19:41.925 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:19:50.939 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:20:00.954 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:20:10.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:20:20.984 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:20:30.998 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:20:41.014 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:20:41.034 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:20:28.901861
2026-01-21T17:20:41.034 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:20:41.034 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:20:41.034 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:20:50.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:21:00.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:21:10.076 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:21:20.091 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:21:30.106 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:21:40.120 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:21:40.139 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:21:29.042061
2026-01-21T17:21:40.139 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:21:40.139 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:21:40.140 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:21:49.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:21:59.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:22:09.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:22:19.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:22:29.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:22:39.229 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:22:39.252 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:22:29.182623
2026-01-21T17:22:39.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:22:39.253 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:22:39.253 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:22:48.267 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:22:58.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:23:08.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:23:18.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:23:28.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:23:38.345 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:23:38.366 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:23:29.327711
2026-01-21T17:23:38.366 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:23:38.366 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:23:38.366 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:23:47.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:23:57.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:24:07.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:24:17.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:24:27.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:24:37.456 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:24:37.478 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:24:29.472050
2026-01-21T17:24:37.478 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:24:37.478 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:24:37.478 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:24:46.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:24:56.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:25:06.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:25:16.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:25:26.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:25:36.571 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:25:36.590 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:25:29.610407
2026-01-21T17:25:36.591 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:25:36.591 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:25:36.591 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:25:45.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:25:55.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:26:05.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:26:15.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:26:25.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:26:35.683 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:26:35.685 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:26:29.750925
2026-01-21T17:26:35.685 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:26:35.686 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:26:35.686 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:26:44.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:26:54.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:27:04.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:27:14.747 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:27:24.763 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:27:34.779 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:27:34.781 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:27:29.889763
2026-01-21T17:27:34.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:27:34.782 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:27:34.782 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:27:43.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:27:53.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:28:03.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:28:13.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:28:23.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:28:33.874 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:28:33.893 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:28:30.027779
2026-01-21T17:28:33.893 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:28:33.893 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:28:33.894 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:28:42.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:28:52.922 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:29:02.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:29:12.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:29:22.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:29:32.987 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:29:32.989 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:29:30.169618
2026-01-21T17:29:32.990 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:29:32.990 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:29:32.990 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:29:42.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:29:52.019 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:30:02.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:30:12.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:30:22.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:30:32.077 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:30:32.094 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:30:30.308729
2026-01-21T17:30:32.095 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:30:32.104 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:30:32.104 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:30:41.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:30:51.128 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:31:01.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:31:11.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:31:21.162 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:31:31.173 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:31:31.191 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:31:30.450198
2026-01-21T17:31:31.191 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:31:31.191 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:31:31.191 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:31:40.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:31:50.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:32:00.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:32:10.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:32:20.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:32:30.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:32:30.285 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:31:30.450198
2026-01-21T17:32:30.286 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:32:30.286 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:32:30.286 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:32:39.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:32:49.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:32:59.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:33:09.344 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:33:19.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:33:29.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:33:29.394 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:32:30.592619
2026-01-21T17:33:29.394 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:33:29.394 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:33:29.394 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:33:38.408 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:33:48.422 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:33:58.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:34:08.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:34:18.468 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:34:28.483 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:34:28.506 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:33:30.733303
2026-01-21T17:34:28.507 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:34:28.507 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:34:28.507 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:34:37.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:34:47.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:34:57.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:35:07.567 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:35:17.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:35:27.596 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:35:27.621 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:34:30.869873
2026-01-21T17:35:27.621 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:35:27.622 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:35:27.622 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:35:36.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:35:46.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:35:56.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:36:06.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:36:16.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:36:26.712 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:36:26.732 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:35:31.009962
2026-01-21T17:36:26.733 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:36:26.733 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:36:26.733 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:36:35.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:36:45.763 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:36:55.778 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:37:05.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:37:15.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:37:25.820 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:37:25.843 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:36:31.152041
2026-01-21T17:37:25.843 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:37:25.844 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:37:25.844 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:37:34.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:37:44.872 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:37:54.889 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:38:04.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:38:14.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:38:24.931 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:38:24.952 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:37:31.293833
2026-01-21T17:38:24.952 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:38:24.953 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:38:24.953 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:38:33.966 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:38:43.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:38:53.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:39:04.011 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:39:14.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:39:24.037 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:39:24.059 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:38:31.431506
2026-01-21T17:39:24.059 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:39:24.059 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:39:24.060 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:39:33.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:39:43.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:39:53.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:40:03.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:40:13.132 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:40:23.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:40:23.167 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:39:31.575742
2026-01-21T17:40:23.167 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:40:23.167 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:40:23.167 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:40:32.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:40:42.195 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:40:52.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:41:02.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:41:12.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:41:22.257 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:41:22.274 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:40:31.724904
2026-01-21T17:41:22.275 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:41:22.275 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:41:22.275 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:41:31.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:41:41.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:41:51.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:42:01.335 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:42:11.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:42:21.366 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:42:21.383 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:41:31.863877
2026-01-21T17:42:21.383 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:42:21.383 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:42:21.383 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:42:30.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:42:40.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:42:50.428 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:43:00.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:43:10.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:43:20.473 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:43:20.490 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:42:32.003813
2026-01-21T17:43:20.490 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:43:20.490 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:43:20.491 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:43:29.502 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:43:39.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:43:49.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:43:59.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:44:09.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:44:19.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:44:19.583 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:43:32.142182
2026-01-21T17:44:19.583 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:44:19.583 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:44:19.584 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:44:28.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:44:38.613 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:44:48.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:44:58.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:45:08.659 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:45:18.673 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:45:18.696 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:44:32.283843
2026-01-21T17:45:18.696 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:45:18.697 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:45:18.697 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:45:27.711 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:45:37.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:45:47.742 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:45:57.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:46:07.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:46:17.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:46:17.807 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:45:32.425279
2026-01-21T17:46:17.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:46:17.807 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:46:17.807 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:46:26.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:46:36.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:46:46.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:46:56.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:47:06.876 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:47:16.890 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:47:16.915 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:46:32.563810
2026-01-21T17:47:16.916 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:47:16.916 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:47:16.916 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:47:25.928 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:47:35.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:47:45.958 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:47:55.973 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:48:05.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:48:16.001 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:48:16.020 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:47:32.703519
2026-01-21T17:48:16.020 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:48:16.020 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:48:16.020 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:48:25.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:48:35.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:48:45.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:48:55.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:49:05.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:49:15.104 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:49:15.127 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:48:32.846900
2026-01-21T17:49:15.127 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:49:15.127 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:49:15.128 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:49:24.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:49:34.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:49:44.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:49:54.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:50:04.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:50:14.216 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:50:14.233 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:49:32.988834
2026-01-21T17:50:14.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:50:14.233 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:50:14.233 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:50:23.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:50:33.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:50:43.277 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:50:53.292 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:51:03.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:51:13.321 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:51:13.340 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:50:33.127943
2026-01-21T17:51:13.340 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:51:13.340 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:51:13.340 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:51:22.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:51:32.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:51:42.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:51:52.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:52:02.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:52:12.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:52:12.449 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:51:33.270971
2026-01-21T17:52:12.449 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:52:12.450 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:52:12.450 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:52:21.462 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:52:31.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:52:41.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:52:51.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:53:01.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:53:11.538 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:53:11.560 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:52:33.411993
2026-01-21T17:53:11.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:53:11.560 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:53:11.560 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:53:20.575 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:53:30.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:53:40.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:53:50.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:54:00.640 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:54:10.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:54:10.679 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:53:33.552926
2026-01-21T17:54:10.680 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:54:10.680 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:54:10.680 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:54:19.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:54:29.711 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:54:39.725 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:54:49.742 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:54:59.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:55:09.771 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:55:09.795 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:54:33.694437
2026-01-21T17:55:09.795 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:55:09.795 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:55:09.795 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:55:18.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:55:28.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:55:38.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:55:48.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:55:58.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:56:08.884 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:56:08.904 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:55:33.833784
2026-01-21T17:56:08.905 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:56:08.905 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:56:08.905 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:56:17.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:56:27.931 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:56:37.945 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:56:47.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:56:57.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:57:07.986 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:57:08.004 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:56:33.982411
2026-01-21T17:57:08.004 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:57:08.004 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:57:08.004 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:57:17.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:57:27.031 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:57:37.046 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:57:47.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:57:57.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:58:07.089 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:58:07.111 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:57:34.124551
2026-01-21T17:58:07.111 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:58:07.111 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:58:07.111 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:58:16.125 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:58:26.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:58:36.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:58:46.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:58:56.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T17:59:06.197 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T17:59:06.218 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:58:34.269126
2026-01-21T17:59:06.218 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T17:59:06.218 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T17:59:06.219 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T17:59:15.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T17:59:25.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T17:59:35.262 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T17:59:45.277 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T17:59:55.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:00:05.309 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:00:05.331 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T17:59:34.412234
2026-01-21T18:00:05.332 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:00:05.332 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:00:05.332 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:00:14.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:00:24.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:00:34.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:00:44.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:00:54.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:01:04.406 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:01:04.409 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:00:34.553565
2026-01-21T18:01:04.409 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:01:04.409 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:01:04.409 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:01:13.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:01:23.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:01:33.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:01:43.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:01:53.485 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:02:03.500 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:02:03.518 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:01:34.694955
2026-01-21T18:02:03.518 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:02:03.518 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:02:03.518 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:02:12.527 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:02:22.537 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:02:32.548 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:02:42.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:02:52.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:03:02.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:03:02.609 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:02:34.837065
2026-01-21T18:03:02.609 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:03:02.610 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:03:02.610 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:03:11.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:03:21.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:03:31.654 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:03:41.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:03:51.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:04:01.686 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:04:01.709 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:03:34.979256
2026-01-21T18:04:01.709 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:04:01.709 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:04:01.709 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:04:10.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:04:20.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:04:30.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:04:40.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:04:50.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:05:00.796 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:05:00.817 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:04:35.120149
2026-01-21T18:05:00.817 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:05:00.818 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:05:00.818 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:05:09.830 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:05:19.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:05:29.850 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:05:39.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:05:49.876 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:05:59.889 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:05:59.910 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:05:35.264215
2026-01-21T18:05:59.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:05:59.910 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:05:59.910 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:06:08.922 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:06:18.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:06:28.952 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:06:38.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:06:48.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:06:58.986 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:06:59.004 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:06:35.403536
2026-01-21T18:06:59.004 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:06:59.004 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:06:59.004 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:07:08.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:07:18.026 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:07:28.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:07:38.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:07:48.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:07:58.084 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:07:58.101 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:07:35.543419
2026-01-21T18:07:58.101 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:07:58.101 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:07:58.101 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:08:07.114 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:08:17.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:08:27.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:08:37.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:08:47.158 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:08:57.173 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:08:57.196 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:08:35.693293
2026-01-21T18:08:57.196 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:08:57.196 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:08:57.196 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:09:06.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:09:16.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:09:26.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:09:36.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:09:46.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:09:56.280 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:09:56.299 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:09:35.832254
2026-01-21T18:09:56.299 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:09:56.299 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:09:56.299 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:10:05.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:10:15.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:10:25.333 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:10:35.346 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:10:45.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:10:55.375 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:10:55.393 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:10:35.972341
2026-01-21T18:10:55.393 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:10:55.393 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:10:55.393 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:11:04.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:11:14.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:11:24.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:11:34.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:11:44.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:11:54.470 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:11:54.472 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:11:36.113781
2026-01-21T18:11:54.473 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:11:54.473 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:11:54.473 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:12:03.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:12:13.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:12:23.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:12:33.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:12:43.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:12:53.559 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:12:53.575 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:12:36.254521
2026-01-21T18:12:53.575 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:12:53.575 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:12:53.575 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:13:02.584 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:13:12.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:13:22.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:13:32.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:13:42.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:13:52.650 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:13:52.667 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:13:36.406415
2026-01-21T18:13:52.668 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:13:52.668 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:13:52.668 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:14:01.682 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:14:11.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:14:21.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:14:31.723 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:14:41.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:14:51.744 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:14:51.762 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:14:36.547848
2026-01-21T18:14:51.762 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:14:51.762 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:14:51.762 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:15:00.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:15:10.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:15:20.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:15:30.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:15:40.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:15:50.847 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:15:50.870 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:15:36.687185
2026-01-21T18:15:50.870 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:15:50.870 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:15:50.870 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:15:59.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:16:09.893 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:16:19.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:16:29.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:16:39.927 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:16:49.942 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:16:49.965 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:16:36.835100
2026-01-21T18:16:49.965 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:16:49.965 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:16:49.965 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:16:58.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:17:08.994 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:17:19.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:17:29.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:17:39.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:17:49.043 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:17:49.044 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:17:36.976520
2026-01-21T18:17:49.044 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:17:49.044 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:17:49.044 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:17:58.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:18:08.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:18:18.079 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:18:28.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:18:38.109 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:18:48.124 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:18:48.145 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:18:37.117578
2026-01-21T18:18:48.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:18:48.145 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:18:48.146 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:18:57.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:19:07.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:19:17.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:19:27.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:19:37.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:19:47.217 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:19:47.219 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:19:37.257362
2026-01-21T18:19:47.219 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:19:47.219 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:19:47.220 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:19:56.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:20:06.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:20:16.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:20:26.278 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:20:36.291 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:20:46.302 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:20:46.319 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:20:37.396949
2026-01-21T18:20:46.319 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:20:46.319 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:20:46.319 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:20:55.328 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:21:05.339 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:21:15.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:21:25.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:21:35.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:21:45.397 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:21:45.419 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:21:37.536468
2026-01-21T18:21:45.419 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:21:45.419 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:21:45.419 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:21:54.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:22:04.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:22:14.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:22:24.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:22:34.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:22:44.495 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:22:44.515 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:22:37.679059
2026-01-21T18:22:44.515 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:22:44.515 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:22:44.515 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:22:53.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:23:03.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:23:13.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:23:23.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:23:33.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:23:43.607 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:23:43.626 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:23:37.821518
2026-01-21T18:23:43.626 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:23:43.626 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:23:43.626 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:23:52.635 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:24:02.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:24:12.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:24:22.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:24:32.683 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:24:42.699 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:24:42.715 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:24:37.962448
2026-01-21T18:24:42.716 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:24:42.716 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:24:42.716 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:24:51.730 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:25:01.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:25:11.762 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:25:21.772 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:25:31.782 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:25:41.792 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:25:41.812 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:25:38.105491
2026-01-21T18:25:41.812 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:25:41.812 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:25:41.812 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:25:50.822 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:26:00.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:26:10.852 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:26:20.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:26:30.883 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:26:40.897 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:26:40.915 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:26:38.247864
2026-01-21T18:26:40.916 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:26:40.916 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:26:40.916 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:26:49.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:26:59.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:27:09.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:27:19.958 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:27:29.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:27:39.986 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:27:40.004 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:27:38.390161
2026-01-21T18:27:40.004 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:27:40.005 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:27:40.005 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:27:49.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:27:59.031 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:28:09.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:28:19.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:28:29.066 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:28:39.076 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:28:39.091 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:28:38.531934
2026-01-21T18:28:39.091 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:28:39.092 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:28:39.092 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:28:48.101 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:28:58.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:29:08.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:29:18.141 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:29:28.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:29:38.169 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:29:38.187 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:28:38.531934
2026-01-21T18:29:38.187 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:29:38.187 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:29:38.187 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:29:47.200 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:29:57.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:30:07.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:30:17.232 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:30:27.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:30:37.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:30:37.276 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:29:38.670951
2026-01-21T18:30:37.276 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:30:37.277 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:30:37.277 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:30:46.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:30:56.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:31:06.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:31:16.338 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:31:26.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:31:36.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:31:36.387 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:30:38.819375
2026-01-21T18:31:36.388 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:31:36.388 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:31:36.388 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:31:45.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:31:55.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:32:05.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:32:15.447 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:32:25.462 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:32:35.477 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:32:35.480 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:31:38.959340
2026-01-21T18:32:35.480 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:32:35.480 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:32:35.481 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:32:44.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:32:54.509 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:33:04.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:33:14.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:33:24.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:33:34.570 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:33:34.588 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:32:39.098891
2026-01-21T18:33:34.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:33:34.588 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:33:34.588 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:33:43.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:33:53.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:34:03.632 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:34:13.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:34:23.661 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:34:33.676 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:34:33.695 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:33:39.237390
2026-01-21T18:34:33.696 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:34:33.696 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:34:33.696 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:34:42.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:34:52.725 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:35:02.740 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:35:12.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:35:22.769 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:35:32.786 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:35:32.804 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:34:39.385584
2026-01-21T18:35:32.804 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:35:32.805 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:35:32.805 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:35:41.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:35:51.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:36:01.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:36:11.862 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:36:21.877 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:36:31.893 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:36:31.914 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:35:39.524550
2026-01-21T18:36:31.914 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:36:31.914 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:36:31.914 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:36:40.927 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:36:50.942 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:37:00.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:37:10.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:37:20.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:37:31.001 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:37:31.019 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:36:39.667479
2026-01-21T18:37:31.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:37:31.019 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:37:31.020 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:37:40.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:37:50.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:38:00.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:38:10.076 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:38:20.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:38:30.104 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:38:30.126 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:37:39.809125
2026-01-21T18:38:30.126 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:38:30.126 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:38:30.126 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:38:39.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:38:49.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:38:59.166 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:39:09.182 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:39:19.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:39:29.212 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:39:29.235 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:38:39.951052
2026-01-21T18:39:29.235 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:39:29.235 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:39:29.235 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:39:38.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:39:48.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:39:58.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:40:08.295 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:40:18.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:40:28.325 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:40:28.346 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:39:40.093751
2026-01-21T18:40:28.346 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:40:28.346 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:40:28.346 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:40:37.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:40:47.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:40:57.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:41:07.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:41:17.422 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:41:27.437 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:41:27.456 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:40:40.235599
2026-01-21T18:41:27.456 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:41:27.456 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:41:27.456 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:41:36.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:41:46.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:41:56.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:42:06.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:42:16.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:42:26.544 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:42:26.562 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:41:40.375398
2026-01-21T18:42:26.562 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:42:26.562 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:42:26.563 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:42:35.577 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:42:45.592 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:42:55.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:43:05.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:43:15.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:43:25.653 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:43:25.673 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:42:40.514707
2026-01-21T18:43:25.673 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:43:25.674 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:43:25.674 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:43:34.687 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:43:44.702 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:43:54.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:44:04.733 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:44:14.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:44:24.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:44:24.790 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:43:40.655775
2026-01-21T18:44:24.791 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:44:24.791 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:44:24.791 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:44:33.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:44:43.820 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:44:53.836 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:45:03.851 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:45:13.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:45:23.883 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:45:23.905 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:44:40.794866
2026-01-21T18:45:23.905 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:45:23.905 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:45:23.905 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:45:32.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:45:42.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:45:52.948 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:46:02.962 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:46:12.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:46:22.992 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:46:23.015 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:45:40.934326
2026-01-21T18:46:23.015 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:46:23.015 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:46:23.015 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:46:32.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:46:42.042 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:46:52.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:47:02.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:47:12.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:47:22.100 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:47:22.102 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:46:41.074554
2026-01-21T18:47:22.103 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:47:22.103 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:47:22.103 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:47:31.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:47:41.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:47:51.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:48:01.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:48:11.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:48:21.189 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:48:21.212 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:47:41.224361
2026-01-21T18:48:21.212 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:48:21.212 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:48:21.212 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:48:30.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:48:40.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:48:50.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:49:00.271 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:49:10.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:49:20.301 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:49:20.323 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:48:41.366285
2026-01-21T18:49:20.323 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:49:20.323 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:49:20.323 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:49:29.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:49:39.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:49:49.365 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:49:59.379 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:50:09.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:50:19.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:50:19.424 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:49:41.508147
2026-01-21T18:50:19.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:50:19.424 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:50:19.425 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:50:28.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:50:38.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:50:48.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:50:58.482 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:51:08.497 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:51:18.512 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:51:18.532 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:50:41.664070
2026-01-21T18:51:18.533 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:51:18.533 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:51:18.533 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:51:27.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:51:37.560 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:51:47.575 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:51:57.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:52:07.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:52:17.621 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:52:17.641 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:51:41.806558
2026-01-21T18:52:17.671 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:52:17.671 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:52:17.671 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:52:26.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:52:36.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:52:46.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:52:56.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:53:06.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:53:16.761 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:53:16.780 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:52:41.948297
2026-01-21T18:53:16.810 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:53:16.810 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:53:16.811 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:53:25.824 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:53:35.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:53:45.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:53:55.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:54:05.883 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:54:15.897 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:54:15.919 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:53:42.087477
2026-01-21T18:54:15.919 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:54:15.919 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:54:15.920 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:54:24.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:54:34.948 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:54:44.963 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:54:54.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:55:04.991 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:55:15.005 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:55:15.018 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:54:42.228236
2026-01-21T18:55:15.018 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:55:15.018 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:55:15.019 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:55:24.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:55:34.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:55:44.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:55:54.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:56:04.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:56:14.102 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:56:14.122 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:55:42.375383
2026-01-21T18:56:14.122 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:56:14.122 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:56:14.122 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:56:23.135 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:56:33.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:56:43.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:56:53.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:57:03.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:57:13.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:57:13.226 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:56:42.525596
2026-01-21T18:57:13.227 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:57:13.227 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:57:13.227 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:57:22.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:57:32.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:57:42.272 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:57:52.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:58:02.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:58:12.318 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:58:12.337 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:57:42.664923
2026-01-21T18:58:12.338 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:58:12.338 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:58:12.338 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:58:21.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:58:31.366 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:58:41.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:58:51.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T18:59:01.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T18:59:11.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T18:59:11.447 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:58:42.806507
2026-01-21T18:59:11.447 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T18:59:11.447 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T18:59:11.448 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T18:59:20.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T18:59:30.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T18:59:40.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T18:59:50.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:00:00.523 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:00:10.536 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:00:10.557 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T18:59:42.944202
2026-01-21T19:00:10.558 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:00:10.558 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:00:10.558 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:00:19.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:00:29.583 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:00:39.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:00:49.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:00:59.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:01:09.645 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:01:09.647 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:00:43.084873
2026-01-21T19:01:09.648 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:01:09.648 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:01:09.648 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:01:18.661 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:01:28.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:01:38.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:01:48.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:01:58.723 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:02:08.737 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:02:08.739 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:01:43.225135
2026-01-21T19:02:08.739 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:02:08.739 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:02:08.739 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:02:17.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:02:27.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:02:37.790 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:02:47.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:02:57.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:03:07.834 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:03:07.855 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:02:43.365436
2026-01-21T19:03:07.855 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:03:07.855 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:03:07.855 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:03:16.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:03:26.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:03:36.897 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:03:46.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:03:56.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:04:06.941 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:04:06.960 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:03:43.506051
2026-01-21T19:04:06.960 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:04:06.961 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:04:06.961 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:04:15.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:04:25.989 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:04:36.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:04:46.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:04:56.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:05:06.048 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:05:06.064 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:04:43.647376
2026-01-21T19:05:06.064 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:05:06.064 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:05:06.064 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:05:15.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:05:25.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:05:35.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:05:45.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:05:55.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:06:05.151 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:06:05.175 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:05:43.795224
2026-01-21T19:06:05.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:06:05.175 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:06:05.175 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:06:14.186 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:06:24.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:06:34.217 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:06:44.232 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:06:54.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:07:04.260 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:07:04.281 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:06:43.937879
2026-01-21T19:07:04.281 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:07:04.282 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:07:04.282 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:07:13.294 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:07:23.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:07:33.325 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:07:43.341 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:07:53.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:08:03.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:08:03.388 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:07:44.077453
2026-01-21T19:08:03.389 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:08:03.389 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:08:03.389 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:08:12.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:08:22.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:08:32.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:08:42.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:08:52.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:09:02.481 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:09:02.504 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:08:44.217491
2026-01-21T19:09:02.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:09:02.504 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:09:02.504 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:09:11.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:09:21.533 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:09:31.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:09:41.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:09:51.577 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:10:01.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:10:01.614 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:09:44.359154
2026-01-21T19:10:01.615 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:10:01.615 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:10:01.615 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:10:10.628 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:10:20.644 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:10:30.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:10:40.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:10:50.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:11:00.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:11:00.727 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:10:44.499226
2026-01-21T19:11:00.727 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:11:00.727 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:11:00.727 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:11:09.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:11:19.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:11:29.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:11:39.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:11:49.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:11:59.819 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:11:59.839 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:11:44.638396
2026-01-21T19:11:59.840 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:11:59.840 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:11:59.840 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:12:08.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:12:18.870 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:12:28.885 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:12:38.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:12:48.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:12:58.927 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:12:58.929 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:12:44.786494
2026-01-21T19:12:58.930 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:12:58.930 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:12:58.930 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:13:07.944 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:13:17.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:13:27.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:13:37.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:13:48.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:13:58.017 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:13:58.040 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:13:44.926481
2026-01-21T19:13:58.040 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:13:58.040 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:13:58.040 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:14:07.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:14:17.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:14:27.079 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:14:37.091 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:14:47.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:14:57.119 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:14:57.142 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:14:45.066573
2026-01-21T19:14:57.142 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:14:57.142 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:14:57.142 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:15:06.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:15:16.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:15:26.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:15:36.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:15:46.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:15:56.229 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:15:56.252 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:15:45.205538
2026-01-21T19:15:56.252 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:15:56.252 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:15:56.252 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:16:05.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:16:15.281 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:16:25.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:16:35.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:16:45.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:16:55.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:16:55.344 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:16:45.344169
2026-01-21T19:16:55.344 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:16:55.344 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:16:55.344 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:17:04.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:17:14.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:17:24.387 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:17:34.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:17:44.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:17:54.433 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:17:54.450 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:17:45.484269
2026-01-21T19:17:54.450 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:17:54.450 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:17:54.450 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:18:03.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:18:13.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:18:23.493 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:18:33.509 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:18:43.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:18:53.540 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:18:53.561 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:18:45.627857
2026-01-21T19:18:53.561 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:18:53.561 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:18:53.561 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:19:02.575 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:19:12.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:19:22.606 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:19:32.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:19:42.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:19:52.650 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:19:52.671 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:19:45.765993
2026-01-21T19:19:52.672 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:19:52.672 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:19:52.672 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:20:01.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:20:11.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:20:21.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:20:31.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:20:41.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:20:51.760 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:20:51.780 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:20:45.906403
2026-01-21T19:20:51.780 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:20:51.780 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:20:51.780 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:21:00.793 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:21:10.807 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:21:20.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:21:30.836 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:21:40.851 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:21:50.867 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:21:50.869 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:21:46.046485
2026-01-21T19:21:50.870 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:21:50.870 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:21:50.870 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:21:59.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:22:09.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:22:19.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:22:29.927 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:22:39.940 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:22:49.954 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:22:49.975 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:22:46.187976
2026-01-21T19:22:49.975 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:22:49.975 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:22:49.975 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:22:58.989 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:23:09.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:23:19.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:23:29.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:23:39.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:23:49.058 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:23:49.078 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:23:46.327137
2026-01-21T19:23:49.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:23:49.079 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:23:49.079 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:23:58.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:24:08.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:24:18.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:24:28.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:24:38.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:24:48.165 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:24:48.189 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:24:46.466197
2026-01-21T19:24:48.189 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:24:48.189 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:24:48.189 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:24:57.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:25:07.218 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:25:17.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:25:27.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:25:37.263 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:25:47.278 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:25:47.302 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:25:46.606914
2026-01-21T19:25:47.302 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:25:47.302 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:25:47.303 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:25:56.316 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:26:06.331 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:26:16.346 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:26:26.361 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:26:36.376 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:26:46.391 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:26:46.415 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:25:46.606914
2026-01-21T19:26:46.416 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:26:46.416 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:26:46.416 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:26:55.430 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:27:05.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:27:15.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:27:25.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:27:35.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:27:45.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:27:45.523 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:26:46.746676
2026-01-21T19:27:45.523 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:27:45.524 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:27:45.524 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:27:54.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:28:04.553 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:28:14.568 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:28:24.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:28:34.596 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:28:44.609 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:28:44.630 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:27:46.888178
2026-01-21T19:28:44.631 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:28:44.631 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:28:44.631 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:28:53.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:29:03.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:29:13.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:29:23.690 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:29:33.706 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:29:43.721 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:29:43.743 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:28:47.029866
2026-01-21T19:29:43.744 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:29:43.744 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:29:43.744 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:29:52.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:30:02.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:30:12.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:30:22.803 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:30:32.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:30:42.834 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:30:42.858 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:29:47.169075
2026-01-21T19:30:42.859 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:30:42.859 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:30:42.859 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:30:51.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:31:01.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:31:11.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:31:21.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:31:31.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:31:41.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:31:41.951 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:30:47.307155
2026-01-21T19:31:41.951 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:31:41.951 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:31:41.951 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:31:50.964 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:32:00.980 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:32:10.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:32:21.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:32:31.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:32:41.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:32:41.060 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:31:47.458688
2026-01-21T19:32:41.060 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:32:41.061 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:32:41.061 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:32:50.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:33:00.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:33:10.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:33:20.118 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:33:30.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:33:40.148 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:33:40.166 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:32:47.599449
2026-01-21T19:33:40.166 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:33:40.166 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:33:40.166 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:33:49.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:33:59.195 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:34:09.210 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:34:19.225 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:34:29.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:34:39.256 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:34:39.276 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:33:47.739540
2026-01-21T19:34:39.276 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:34:39.277 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:34:39.277 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:34:48.291 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:34:58.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:35:08.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:35:18.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:35:28.352 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:35:38.366 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:35:38.389 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:34:47.878596
2026-01-21T19:35:38.389 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:35:38.389 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:35:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:35:47.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:35:57.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:36:07.434 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:36:17.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:36:27.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:36:37.478 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:36:37.496 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:35:48.017764
2026-01-21T19:36:37.496 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:36:37.496 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:36:37.496 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:36:46.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:36:56.523 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:37:06.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:37:16.552 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:37:26.567 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:37:36.581 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:37:36.602 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:36:48.156566
2026-01-21T19:37:36.602 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:37:36.603 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:37:36.603 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:37:45.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:37:55.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:38:05.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:38:15.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:38:25.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:38:35.692 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:38:35.695 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:37:48.297751
2026-01-21T19:38:35.695 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:38:35.695 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:38:35.695 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:38:44.710 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:38:54.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:39:04.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:39:14.756 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:39:24.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:39:34.785 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:39:34.802 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:38:48.437692
2026-01-21T19:39:34.802 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:39:34.802 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:39:34.802 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:39:43.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:39:53.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:40:03.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:40:13.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:40:23.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:40:33.889 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:40:33.914 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:39:48.577558
2026-01-21T19:40:33.914 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:40:33.914 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:40:33.915 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:40:42.929 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:40:52.944 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:41:02.958 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:41:12.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:41:22.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:41:33.001 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:41:33.019 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-21T19:40:48.728235
2026-01-21T19:41:33.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-21T19:41:33.020 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:41:33.020 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:41:42.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:41:52.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:42:02.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:42:12.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:42:22.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:42:32.103 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:42:32.121 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:41:53.623384
2026-01-21T19:42:32.121 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:41:53.623384
2026-01-21T19:42:32.122 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:42:32.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:42:32.123 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:42:32.123 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:42:32&start_after=2026-01-20T17:42:32&end_after=2026-01-21T17:42:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:42:32.260 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.279 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.290 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.294 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.296 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.297 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.298 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:42:32.301 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:42:32.305 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:42:32.305 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T19:42:32.305 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:42:32.305 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:42:32.305 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1577.694491
2026-01-21T19:42:32.305 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:42:32.305 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:42:32.305 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:42:32.306 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:42:32.306 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:42:41.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:42:51.336 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:43:01.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:43:11.365 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:43:21.378 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:43:31.391 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:43:31.412 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:43:00.329081
2026-01-21T19:43:31.412 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:43:00.329081
2026-01-21T19:43:31.412 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:43:31.412 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:43:31.412 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:43:31.412 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:43:31&start_after=2026-01-20T17:43:31&end_after=2026-01-21T17:43:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:43:31.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.532 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.534 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.536 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.537 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.538 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.539 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.540 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.540 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.542 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.543 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:43:31.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:43:31.549 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:43:31.550 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T19:43:31.550 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:43:31.550 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:43:31.550 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1518.449826
2026-01-21T19:43:31.550 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:43:31.550 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:43:31.550 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:43:31.550 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:43:31.551 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:43:40.560 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:43:50.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:44:00.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:44:10.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:44:20.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:44:30.625 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:44:30.647 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:44:08.028484
2026-01-21T19:44:30.648 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:44:08.028484
2026-01-21T19:44:30.648 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:44:30.648 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:44:30.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:44:30.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:44:30&start_after=2026-01-20T17:44:30&end_after=2026-01-21T17:44:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:44:30.805 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.823 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.825 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:44:30.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.849 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:44:30.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:44:30.851 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T19:44:30.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:44:30.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:44:30.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1459.14845
2026-01-21T19:44:30.851 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:44:30.851 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:44:30.851 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:44:30.852 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:44:30.852 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:44:39.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:44:49.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:44:59.893 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:45:09.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:45:19.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:45:29.926 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:45:29.945 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:45:12.509373
2026-01-21T19:45:29.945 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:45:12.509373
2026-01-21T19:45:29.945 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:45:29.945 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:45:29.945 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:45:29.945 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:45:29&start_after=2026-01-20T17:45:29&end_after=2026-01-21T17:45:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:45:30.067 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.069 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.071 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.071 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.073 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.074 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.075 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.076 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.076 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.078 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.079 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.080 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.081 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.081 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:45:30.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.084 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.085 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:45:30.086 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:45:30.086 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T19:45:30.086 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:45:30.086 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:45:30.086 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1399.913777
2026-01-21T19:45:30.086 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:45:30.086 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:45:30.086 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:45:30.087 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:45:30.087 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:45:39.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:45:49.106 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:45:59.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:46:09.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:46:19.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:46:29.146 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:46:29.147 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:46:16.532779
2026-01-21T19:46:29.147 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:46:16.532779
2026-01-21T19:46:29.147 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:46:29.147 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:46:29.147 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:46:29.147 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:46:29&start_after=2026-01-20T17:46:29&end_after=2026-01-21T17:46:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:46:29.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.275 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.276 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.279 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.280 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.282 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.282 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:46:29.285 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.287 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.288 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:46:29.288 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:46:29.288 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T19:46:29.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:46:29.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:46:29.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1340.710867
2026-01-21T19:46:29.289 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:46:29.289 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:46:29.289 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:46:29.289 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:46:29.289 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:46:38.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:46:48.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:46:58.328 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:47:08.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:47:18.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:47:28.372 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:47:28.395 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:47:23.106629
2026-01-21T19:47:28.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:47:23.106629
2026-01-21T19:47:28.396 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:47:28.396 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:47:28.397 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:47:28.397 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:47:28&start_after=2026-01-20T17:47:28&end_after=2026-01-21T17:47:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:47:28.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.660 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.663 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.664 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:47:28.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.668 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.669 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:47:28.669 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:47:28.669 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:47:28.669 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:47:28.669 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:47:28.670 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1281.329991
2026-01-21T19:47:28.670 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:47:28.670 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:47:28.670 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:47:28.671 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:47:28.671 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:47:37.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:47:47.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:47:57.703 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:48:07.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:48:17.723 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:48:27.734 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:48:27.752 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:47:23.106629
2026-01-21T19:48:27.752 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:47:23.106629
2026-01-21T19:48:27.752 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:48:27.752 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:48:27.752 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:48:27.752 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:48:27&start_after=2026-01-20T17:48:27&end_after=2026-01-21T17:48:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:48:27.874 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.876 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.878 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.879 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.883 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.883 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.885 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.887 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.887 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.888 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.889 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:48:27.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.893 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:48:27.895 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:48:27.895 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:48:27.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:48:27.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:48:27.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1222.104775
2026-01-21T19:48:27.895 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-21T19:48:27.895 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-21T19:48:27.895 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-21T19:48:27.896 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-21T19:48:27.896 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-21T19:48:36.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:48:46.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:48:56.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:49:06.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:49:16.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:49:26.957 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:49:26.980 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:48:28.990042
2026-01-21T19:49:26.980 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:48:28.990042
2026-01-21T19:49:26.980 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:49:26.980 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:49:26.980 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:49:26.980 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:49:26&start_after=2026-01-20T17:49:26&end_after=2026-01-21T17:49:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:49:27.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:49:27.127 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1162.869289
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:49:27.130743    Obs time: 2026-01-21 18:08:50
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:22.869257
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1162
2026-01-21T19:49:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:49:36.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:49:46.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:49:56.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:50:06.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:50:16.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:50:26.190 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:50:26.207 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:49:39.621476
2026-01-21T19:50:26.207 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:49:39.621476
2026-01-21T19:50:26.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:50:26.207 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:50:26.207 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:50:26.208 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:50:26&start_after=2026-01-20T17:50:26&end_after=2026-01-21T17:50:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:50:26.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.340 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.340 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.341 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.342 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:50:26.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.353 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.353 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1103.645113
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:50:26.354919    Obs time: 2026-01-21 18:08:50
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:23.645081
2026-01-21T19:50:26.354 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1103
2026-01-21T19:50:26.355 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:50:35.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:50:45.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:50:55.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:51:05.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:51:15.430 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:51:25.445 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:51:25.467 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:50:43.965115
2026-01-21T19:51:25.468 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:50:43.965115
2026-01-21T19:51:25.468 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:51:25.468 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:51:25.469 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:51:25.469 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:51:25&start_after=2026-01-20T17:51:25&end_after=2026-01-21T17:51:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:51:25.604 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.622 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.625 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.629 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.631 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:51:25.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1044.34551
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:51:25.654528    Obs time: 2026-01-21 18:08:50
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:24.345472
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1044
2026-01-21T19:51:25.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:51:34.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:51:44.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:51:54.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:52:04.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:52:14.706 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:52:24.716 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:52:24.737 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:51:47.976643
2026-01-21T19:52:24.737 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:51:47.976643
2026-01-21T19:52:24.737 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:52:24.737 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:52:24.737 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:52:24.738 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:52:24&start_after=2026-01-20T17:52:24&end_after=2026-01-21T17:52:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:52:24.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.863 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.863 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.865 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.865 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.866 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.867 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.868 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.869 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.870 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.871 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.872 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.873 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.873 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.875 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:52:24.876 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.878 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.878 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 985.120124
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:52:24.879908    Obs time: 2026-01-21 18:08:50
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:25.120092
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  985
2026-01-21T19:52:24.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:52:33.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:52:43.897 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:52:53.908 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:53:03.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:53:13.928 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:53:23.939 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:53:23.958 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:52:52.611583
2026-01-21T19:53:23.958 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:52:52.611583
2026-01-21T19:53:23.958 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:53:23.958 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:53:23.958 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:53:23.958 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:53:23&start_after=2026-01-20T17:53:23&end_after=2026-01-21T17:53:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:53:24.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:53:24.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.127 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:53:24.128 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:53:24.128 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:53:24.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:53:24.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:53:24.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 925.871017
2026-01-21T19:53:24.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:53:24.129014    Obs time: 2026-01-21 18:08:50
2026-01-21T19:53:24.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:25.870986
2026-01-21T19:53:24.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  925
2026-01-21T19:53:24.129 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:53:33.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:53:43.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:53:53.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:54:03.167 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:54:13.177 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:54:23.188 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:54:23.206 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:53:57.818408
2026-01-21T19:54:23.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:53:57.818408
2026-01-21T19:54:23.206 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:54:23.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:54:23.207 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:54:23.207 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:54:23&start_after=2026-01-20T17:54:23&end_after=2026-01-21T17:54:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:54:23.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.337 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.341 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:54:23.342 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 866.654186
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:54:23.345846    Obs time: 2026-01-21 18:08:50
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:26.654154
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  866
2026-01-21T19:54:23.345 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:54:32.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:54:42.365 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:54:52.376 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:55:02.386 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:55:12.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:55:22.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:55:22.425 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:55:02.878057
2026-01-21T19:55:22.425 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:55:02.878057
2026-01-21T19:55:22.425 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:55:22.425 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:55:22.425 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:55:22.425 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:55:22&start_after=2026-01-20T17:55:22&end_after=2026-01-21T17:55:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:55:22.542 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.553 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.555 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:55:22.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 807.43621
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:55:22.563822    Obs time: 2026-01-21 18:08:50
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:27.436178
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  807
2026-01-21T19:55:22.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:55:31.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:55:41.583 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:55:51.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:56:01.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:56:11.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:56:21.625 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:56:21.645 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:56:08.986636
2026-01-21T19:56:21.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:56:08.986636
2026-01-21T19:56:21.645 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:56:21.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:56:21.646 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:56:21.646 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:56:21&start_after=2026-01-20T17:56:21&end_after=2026-01-21T17:56:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:56:21.761 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.766 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:56:21.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 748.217314
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:56:21.782717    Obs time: 2026-01-21 18:08:50
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:28.217283
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  748
2026-01-21T19:56:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:56:30.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:56:40.808 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:56:50.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:57:00.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:57:10.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:57:20.869 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:57:20.871 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:57:14.841544
2026-01-21T19:57:20.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:57:14.841544
2026-01-21T19:57:20.872 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:57:20.872 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:57:20.873 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:57:20.873 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:57:20&start_after=2026-01-20T17:57:20&end_after=2026-01-21T17:57:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:57:21.005 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.042 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.047 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:57:21.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 688.946551
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:57:21.053504    Obs time: 2026-01-21 18:08:50
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:28.946496
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  688
2026-01-21T19:57:21.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:57:30.066 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:57:40.076 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:57:50.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:58:00.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:58:10.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:58:20.117 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:58:20.135 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:58:19.846017
2026-01-21T19:58:20.135 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:58:19.846017
2026-01-21T19:58:20.135 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:58:20.135 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:58:20.135 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:58:20.136 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:58:20&start_after=2026-01-20T17:58:20&end_after=2026-01-21T17:58:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:58:20.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.267 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.273 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.273 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.275 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:58:20.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.279 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 629.719596
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 17:58:20.280436    Obs time: 2026-01-21 18:08:50
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:29.719564
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  629
2026-01-21T19:58:20.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T19:58:29.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T19:58:39.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T19:58:49.310 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T19:58:59.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T19:59:09.331 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T19:59:19.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T19:59:19.358 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:58:19.846017
2026-01-21T19:59:19.358 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:58:19.846017
2026-01-21T19:59:19.358 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T19:59:19.358 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T19:59:19.358 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T19:59:19.358 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T17:59:19&start_after=2026-01-20T17:59:19&end_after=2026-01-21T17:59:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T19:59:19.482 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.484 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.486 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.487 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.488 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.489 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.490 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.491 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.492 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.492 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.494 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.495 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.497 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T19:59:19.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T19:59:19.503 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T19:59:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T19:59:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T19:59:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T19:59:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 570.49635
2026-01-21T19:59:19.504 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] Starting up: Next observation due
2026-01-21T19:59:21.508 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T19:59:21.535 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:26.558 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:31.582 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:36.609 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:41.634 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:46.651 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:51.674 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T19:59:56.700 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:01.725 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:06.751 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:11.756 [WARNING] [Poll thread] [schedule_poller.py] [poll()] The telescope is not open: Timed out after 50 seconds waiting for telescope to open
2026-01-21T20:00:18.763 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:00:18.781 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T19:59:23.852484
2026-01-21T20:00:18.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T19:59:23.852484
2026-01-21T20:00:18.781 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:00:18.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:00:18.781 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:00:18.781 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:00:18&start_after=2026-01-20T18:00:18&end_after=2026-01-21T18:00:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:00:18.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.913 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.915 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.917 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.920 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.921 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.922 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:00:18.924 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.925 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.926 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:00:18.927 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:00:18.927 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:00:18.927 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:00:18.927 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:00:18.927 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 511.072398
2026-01-21T20:00:18.928 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] Starting up: Next observation due
2026-01-21T20:00:20.933 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:00:20.950 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:25.956 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:30.979 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:36.008 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:41.031 [DEBUG] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Waiting for telescope to finish opening
2026-01-21T20:00:46.037 [INFO] [Poll thread] [schedule_poller.py] [wait_for_telescope_open()] Telescope is open
2026-01-21T20:00:46.037 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:00:46.037 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:00:46.037914    Obs time: 2026-01-21 18:08:50
2026-01-21T20:00:46.037 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:03.962086
2026-01-21T20:00:46.037 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  483
2026-01-21T20:00:46.038 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:00:48.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:00:58.050 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:01:08.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:01:18.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:01:18.072 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:00:28.937617
2026-01-21T20:01:18.072 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:00:28.937617
2026-01-21T20:01:18.072 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:01:18.072 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:01:18.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:01:18.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:01:18&start_after=2026-01-20T18:01:18&end_after=2026-01-21T18:01:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:01:18.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.233 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.241 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.243 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.244 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.245 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.245 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.246 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.248 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:01:18.249 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:01:18.252 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:01:18.252 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:01:18.252 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:01:18.252 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:01:18.252 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 451.747277
2026-01-21T20:01:18.253 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:01:20.255 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:01:20.256 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:01:20.256 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:01:20.256619    Obs time: 2026-01-21 18:08:50
2026-01-21T20:01:20.256 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:29.743381
2026-01-21T20:01:20.256 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  449
2026-01-21T20:01:20.256 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:01:27.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:01:37.274 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:01:47.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:01:57.295 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:02:07.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:02:17.316 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:02:17.333 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:01:33.625773
2026-01-21T20:02:17.333 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:01:33.625773
2026-01-21T20:02:17.333 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:02:17.333 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:02:17.333 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:02:17.334 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:02:17&start_after=2026-01-20T18:02:17&end_after=2026-01-21T18:02:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:02:17.459 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.461 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.467 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.469 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.472 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.474 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.475 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.476 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:02:17.478 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.479 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.480 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:02:17.480 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:02:17.480 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:02:17.480 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:02:17.481 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:02:17.481 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 392.518941
2026-01-21T20:02:17.481 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:02:19.484 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:02:19.503 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:02:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:02:19.503824    Obs time: 2026-01-21 18:08:50
2026-01-21T20:02:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:30.496176
2026-01-21T20:02:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  390
2026-01-21T20:02:19.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:02:26.509 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:02:36.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:02:46.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:02:56.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:03:06.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:03:16.561 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:03:16.562 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:02:38.075663
2026-01-21T20:03:16.562 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:02:38.075663
2026-01-21T20:03:16.562 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:03:16.562 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:03:16.562 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:03:16.562 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:03:16&start_after=2026-01-20T18:03:16&end_after=2026-01-21T18:03:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:03:16.683 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.685 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.690 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.690 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.693 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.694 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.697 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.698 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.699 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:03:16.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.702 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.703 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:03:16.704 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:03:16.704 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:03:16.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:03:16.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:03:16.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 333.295613
2026-01-21T20:03:16.705 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:03:18.707 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:03:18.708 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:03:18.708 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:03:18.708322    Obs time: 2026-01-21 18:08:50
2026-01-21T20:03:18.708 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:31.291678
2026-01-21T20:03:18.708 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  331
2026-01-21T20:03:18.708 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:03:25.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:03:35.725 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:03:45.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:03:55.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:04:05.756 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:04:15.767 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:04:15.787 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:03:42.414422
2026-01-21T20:04:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:03:42.414422
2026-01-21T20:04:15.787 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:04:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:04:15.787 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:04:15.787 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:04:15&start_after=2026-01-20T18:04:15&end_after=2026-01-21T18:04:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:04:16.024 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.037 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:04:16.042 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:04:16.045 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:04:16.045 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:04:16.045 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:04:16.045 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:04:16.045 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 273.954199
2026-01-21T20:04:16.046 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:04:18.047 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:04:18.069 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:04:18.069 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:04:18.069825    Obs time: 2026-01-21 18:08:50
2026-01-21T20:04:18.069 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:31.930175
2026-01-21T20:04:18.069 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  271
2026-01-21T20:04:18.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:04:25.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:04:35.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:04:45.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:04:55.108 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:05:05.118 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:05:15.128 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:05:15.129 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:04:47.905936
2026-01-21T20:05:15.129 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:04:47.905936
2026-01-21T20:05:15.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:05:15.129 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:05:15.129 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:05:15.129 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:05:15&start_after=2026-01-20T18:05:15&end_after=2026-01-21T18:05:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:05:15.247 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.249 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.252 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.255 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.256 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.258 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.260 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.262 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.262 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:05:15.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.267 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.267 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:05:15.268 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:05:15.268 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:05:15.268 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:05:15.268 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:05:15.268 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 214.731071
2026-01-21T20:05:15.269 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:05:17.271 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:05:17.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:05:17.272 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:05:17.272635    Obs time: 2026-01-21 18:08:50
2026-01-21T20:05:17.272 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:32.727365
2026-01-21T20:05:17.272 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  212
2026-01-21T20:05:17.272 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:05:24.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:05:34.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:05:44.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:05:54.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:06:04.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:06:14.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:06:14.360 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:05:54.856239
2026-01-21T20:06:14.361 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:05:54.856239
2026-01-21T20:06:14.361 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:06:14.361 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:06:14.362 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:06:14.362 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:06:14&start_after=2026-01-20T18:06:14&end_after=2026-01-21T18:06:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:06:14.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.519 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.533 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.536 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.539 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.541 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.543 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:06:14.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:06:14.553 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:06:14.553 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:06:14.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:06:14.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:06:14.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 155.446365
2026-01-21T20:06:14.554 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:06:16.557 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:06:16.577 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:06:16.577 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:06:16.577431    Obs time: 2026-01-21 18:08:50
2026-01-21T20:06:16.577 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:33.422569
2026-01-21T20:06:16.577 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  153
2026-01-21T20:06:16.577 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:06:23.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:06:33.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:06:43.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:06:53.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:07:03.643 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:07:13.654 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:07:13.655 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:07:00.062426
2026-01-21T20:07:13.655 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:07:00.062426
2026-01-21T20:07:13.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:07:13.655 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:07:13.655 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:07:13.655 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:07:13&start_after=2026-01-20T18:07:13&end_after=2026-01-21T18:07:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:07:13.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.799 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.800 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.800 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.801 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.803 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:07:13.804 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.805 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.806 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:07:13.807 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:07:13.807 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:07:13.807 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:07:13.807 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:07:13.807 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 96.192362
2026-01-21T20:07:13.808 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:07:15.810 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:07:15.829 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:07:15.830 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:07:15.829991    Obs time: 2026-01-21 18:08:50
2026-01-21T20:07:15.830 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:34.170009
2026-01-21T20:07:15.830 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  94
2026-01-21T20:07:15.830 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:07:22.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:07:32.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:07:42.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:07:52.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:08:02.878 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:08:12.888 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:08:12.906 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:08:06.158837
2026-01-21T20:08:12.906 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:08:06.158837
2026-01-21T20:08:12.906 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:08:12.906 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:08:12.906 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:08:12.907 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:08:12&start_after=2026-01-20T18:08:12&end_after=2026-01-21T18:08:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:08:13.024 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:08:13.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:08:13.046 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:08:13.046 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:08:13.046 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:08:13.046 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:08:13.046 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 36.95373
2026-01-21T20:08:13.047 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:08:15.049 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:08:15.049 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:08:15.050 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:08:15.050021    Obs time: 2026-01-21 18:08:50
2026-01-21T20:08:15.050 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:34.949979
2026-01-21T20:08:15.050 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  34
2026-01-21T20:08:15.050 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:08:22.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:08:32.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:08:42.078 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:08:52.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:09:02.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:09:12.109 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:09:12.126 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:09:10.887489
2026-01-21T20:09:12.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:09:10.887489
2026-01-21T20:09:12.126 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:09:12.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:09:12.126 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:09:12.126 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:09:12&start_after=2026-01-20T18:09:12&end_after=2026-01-21T18:09:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:09:12.280 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.285 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.288 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.290 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.293 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.294 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.295 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.297 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.298 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.302 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:09:12.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.306 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:09:12.307 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:09:12.308 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 19 configurations
2026-01-21T20:09:12.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:09:12.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:08:50Z
2026-01-21T20:09:12.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -22.308242
2026-01-21T20:09:12.309 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:09:14.311 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:09:14.312 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:09:14.312 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:09:14.312315    Obs time: 2026-01-21 18:08:50
2026-01-21T20:09:14.312 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:35.687685
2026-01-21T20:09:14.312 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86375
2026-01-21T20:09:14.312 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:08:50Z', 'guide_off', 'config_id 13541', 'config_status_id 17503453', 'update_OCS 17503453 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json', 'run_script 1x1HighSlowAuto_flats_17224700_13495_13541.json', 'update_OCS 17503453 COMPLETED 13541 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:17:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:09:14.312 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T20:09:14.312 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T20:09:14.312 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T20:09:14.312 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T20:09:14.312 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:09:14.312 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:09:14.313 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:09:14.313 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:09:14.313 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:09:14.313 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:09:17.316 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:09:17.317 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:09:19.319 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:09:19.325 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:09:19.325 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T18:08:50Z
2026-01-21T20:09:19.325 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T18:08:50Z
2026-01-21T20:09:19.325 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:09:19.325 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:09:19.325 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:09:19.325 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:09:19.326 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:09:19.326 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:09:21.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:09:22.329 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:09:22.329 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:09:24.331 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:09:24.331 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13541
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13541
2026-01-21T20:09:24.331 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17503453
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17503453
2026-01-21T20:09:24.331 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17503453 ATTEMPTED
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17503453 ATTEMPTED
2026-01-21T20:09:24.331 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:09:24.331 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 2.03552, 'targ_dec': -30.333129794162165, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_1x1HighSlowAuto_flats_17224700_13495_13541.json'}
2026-01-21T20:09:24.331 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:09:24.331 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:09:24.332 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T20:09:24.332 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17503453
2026-01-21T20:09:24.332 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T20:09:24.332 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T20:09:24.332 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17503453
2026-01-21T20:09:24.399 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:09:24.832 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:09:24.832 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json 1 times
2026-01-21T20:09:24.832 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:09:24.833 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T20:09:24.833 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T20:09:24.833 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T20:09:27.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:28.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:29.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:30.925 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:31.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:09:31.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:32.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:33.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:35.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:36.028 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:37.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:38.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:39.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:40.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:41.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:41.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:09:42.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:43.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:44.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:45.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:46.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:47.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:48.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:49.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:50.298 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:51.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:51.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:09:52.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:53.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:54.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:55.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:56.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:57.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:58.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:09:59.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:00.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:01.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:10:01.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:02.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:03.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:04.583 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:05.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:06.624 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:07.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:08.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:09.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:10.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:11.370 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:10:11.371 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:09:10.887489
2026-01-21T20:10:11.371 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:09:10.887489
2026-01-21T20:10:11.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:10:11.371 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:10:11.371 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:10:11.371 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:10:11&start_after=2026-01-20T18:10:11&end_after=2026-01-21T18:10:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:10:11.494 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.497 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.505 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.509 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:10:11.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.512 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.512 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:10:11.513 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:10:11.513 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:10:11.513 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:10:11.513 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:10:11.513 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 218.486194
2026-01-21T20:10:11.514 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:10:11.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:12.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:13.516 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:10:13.517 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:10:13.517 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:10:13.517962    Obs time: 2026-01-21 18:13:50
2026-01-21T20:10:13.518 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:36.482038
2026-01-21T20:10:13.518 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  216
2026-01-21T20:10:13.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:10:13.761 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:14.782 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:15.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:16.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:17.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:18.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:19.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:20.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:10:20.900 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:21.918 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:22.942 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:10:23.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:24.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:26.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:27.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:28.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:29.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:30.080 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:30.535 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:10:31.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:32.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:33.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:34.141 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:35.143 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:36.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:37.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:38.203 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:39.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:40.241 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:40.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:10:41.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:42.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:43.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:44.321 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:45.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:46.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:47.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:48.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:49.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:10:50.449 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  2.03571756053557 is close enough to target ra = 2.03552
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -30.3350702321462 is close enough to target dec = -30.333129794162165
2026-01-21T20:10:50.450 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T20:10:50.450 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:10:50.450 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:10:50.450 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:10:50.450 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:10:50.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:10:51.523 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:10:53.525 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:10:53.525 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:10:53.525 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:10:54.489 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:10:54.489 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json was run successfully
2026-01-21T20:10:54.489 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script 1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:10:54.489 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script 1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:10:54.489 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name 1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:10:54.489 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script 1x1HighSlowAuto_flats_17224700_13495_13541.json
2026-01-21T20:10:54.489 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 1, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 3000, 'num_exposures': 2}}, {'unit_number': 2, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 3, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 4, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 5, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 6, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 7, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:02:07.87', 'targ_dec': '-30:19:59.27', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}], 'script_name': '1x1HighSlowAuto_flats_17224700_13495_13541.json'}
2026-01-21T20:10:54.489 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:10:54.489 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:10:54.990 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:10:54.990 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script 1x1HighSlowAuto_flats_17224700_13495_13541.json 1 times
2026-01-21T20:10:54.990 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 7: 1
2026-01-21T20:10:54.990 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:10:54.990 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:10:54.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:10:54.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:10:54.990 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:10:54.990 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:10:54.990 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:10:54.990 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:10:55.000 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:10:55.001 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:10:55.001 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 1
2026-01-21T20:10:55.001 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:1
2026-01-21T20:10:55.001 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 1
2026-01-21T20:10:55.177 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 1
2026-01-21T20:10:56.197 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 2
2026-01-21T20:10:57.218 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 3
2026-01-21T20:10:58.239 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 4
2026-01-21T20:10:59.294 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 1 successfully
2026-01-21T20:11:00.296 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:11:00.460 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-21T20:11:00.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:11:01.461 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:11:01.461 [DEBUG] [script_worker] [client.py] [wrapper()] Error calling: TSocket read 0 bytes
2026-01-21T20:11:01.461 [DEBUG] [script_worker] [client.py] [open()] Opening with close_first = True
2026-01-21T20:11:01.461 [DEBUG] [script_worker] [client.py] [open()] Trying to open transport...
2026-01-21T20:11:01.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.57
2026-01-21T20:11:01.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:09:08
2026-01-21T20:11:01.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:09:08
2026-01-21T20:11:01.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.19, 2879
2026-01-21T20:11:01.463 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09768549999999997
2026-01-21T20:11:01.466 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 1
2026-01-21T20:11:01.466 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:11:01.466 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:11:01.466 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:11:01.663 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-21T20:11:02.665 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:11:02.665 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:11:02.665 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:11:03.853 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:11:07.863 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:11:07.864 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:11:07.864 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:11:07.864 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:11:07.864 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:11:07.864 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:11:07.866 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:11:07.866 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:11:07.868 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:11:08.274 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:11:08.274 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:11:08.275 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019068.275986
2026-01-21T20:11:08.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:11:08.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:11:08.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:08.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:08.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:08.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:10.574 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:11:10.593 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:10:15.432004
2026-01-21T20:11:10.593 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:10:15.432004
2026-01-21T20:11:10.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:11:10.593 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:11:10.593 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:11:10.593 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:11:10&start_after=2026-01-20T18:11:10&end_after=2026-01-21T18:11:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:11:10.709 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.716 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.720 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.721 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.724 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:11:10.725 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.727 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.728 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:11:10.728 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:11:10.728 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:11:10.728 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:11:10.728 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:11:10.729 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 159.270975
2026-01-21T20:11:10.729 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:11:11.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:11.908 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:11.908 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:11.908 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:12.731 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:11:12.732 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:11:12.732 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:11:12.732797    Obs time: 2026-01-21 18:13:50
2026-01-21T20:11:12.732 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:37.267203
2026-01-21T20:11:12.732 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  157
2026-01-21T20:11:12.732 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:11:13.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:14.911 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:14.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:14.930 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:14.930 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:15.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:17.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:17.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:17.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:17.934 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:17.934 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:19.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:11:19.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:20.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:20.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:20.953 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:20.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:21.981 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:23.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:23.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:23.955 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:23.955 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:24.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:26.161 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:26.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:26.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:26.977 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:26.977 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:28.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:29.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:11:29.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:29.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:29.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:29.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:30.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:32.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:33.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:33.019 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:33.019 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:33.019 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:34.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:35.566 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:11:35.566 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:11:35.568 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:11:35.792 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:11:35.794 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019095.794063
2026-01-21T20:11:36.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:36.040 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:36.040 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:36.040 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:36.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 2.146/3.0
2026-01-21T20:11:38.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.087/3.0
2026-01-21T20:11:39.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:39.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:39.056 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:39.056 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:39.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:11:41.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:42.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:42.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:42.058 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:42.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:43.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:45.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:45.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:45.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:45.082 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:45.082 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:47.164 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:48.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:48.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:48.105 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:48.105 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:49.287 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:49.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:11:51.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:51.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:51.130 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:51.130 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:51.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:53.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:54.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:54.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:54.135 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:54.135 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:55.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:57.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:11:57.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:11:57.153 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:11:57.153 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:11:57.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:59.720 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:11:59.777 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:12:00.156 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:00.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:00.157 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:00.157 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:01.082 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:12:01.082 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:12:01.101 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:12:03.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:12:03.160 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 7
2026-01-21T20:12:03.160 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 7: 2
2026-01-21T20:12:03.160 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:12:03.160 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:12:03.160 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:12:03.161 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:12:03.161 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:12:03.161 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:12:03.161 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:12:03.161 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:12:03.171 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:12:03.172 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:12:03.172 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-21T20:12:03.172 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-21T20:12:03.172 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-21T20:12:03.217 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-21T20:12:04.236 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-21T20:12:05.272 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-21T20:12:06.292 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-21T20:12:07.313 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 5
2026-01-21T20:12:08.334 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 6
2026-01-21T20:12:09.405 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-21T20:12:09.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:12:09.788 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:11:23.393813
2026-01-21T20:12:09.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:11:23.393813
2026-01-21T20:12:09.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:12:09.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:12:09.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:12:09.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:12:09&start_after=2026-01-20T18:12:09&end_after=2026-01-21T18:12:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:12:09.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.920 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.921 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.922 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.923 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.924 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.924 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.926 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.929 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.929 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:12:09.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:12:09.935 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:12:09.935 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:12:09.935 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:12:09.935 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:12:09.935 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 100.064039
2026-01-21T20:12:09.936 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:12:10.415 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:12:10.571 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T20:12:11.572 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:12:11.574 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.48
2026-01-21T20:12:11.574 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:11:49
2026-01-21T20:12:11.574 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:11:49
2026-01-21T20:12:11.574 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-21T20:12:11.574 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08909133858267715
2026-01-21T20:12:11.577 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-21T20:12:11.577 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:12:11.577 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:12:11.577 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:12:11.737 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T20:12:11.938 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:12:11.939 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:12:11.939 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:12:11.939709    Obs time: 2026-01-21 18:13:50
2026-01-21T20:12:11.939 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:38.060291
2026-01-21T20:12:11.939 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  98
2026-01-21T20:12:11.939 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:12:12.738 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:12:12.738 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:12:12.738 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:12:13.922 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:12:17.931 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:12:17.932 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:12:17.932 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:12:17.932 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:12:17.932 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:12:17.932 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:12:17.934 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:12:17.934 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:12:17.936 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:12:18.080 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:12:18.080 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:12:18.083 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019138.0830216
2026-01-21T20:12:18.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:12:18.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:12:18.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:18.945 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:12:18.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:18.955 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:18.955 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:21.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:21.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:21.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:21.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:23.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:24.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:24.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:24.979 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:24.979 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:25.700 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:27.745 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:27.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:27.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:27.981 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:27.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:28.952 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:12:29.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:30.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:31.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:31.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:31.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:31.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:33.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:34.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:34.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:34.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:34.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:36.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:37.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:37.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:37.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:37.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:38.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:38.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:12:40.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:40.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:40.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:40.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:40.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:42.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: IDLE Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:42.368 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:12:42.368 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:12:42.390 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:12:42.549 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:12:42.551 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019162.5511646
2026-01-21T20:12:43.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:43.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:43.033 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:43.034 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:44.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:46.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:46.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:46.038 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:46.038 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:46.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:48.475 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:48.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:12:49.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:49.062 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:49.062 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:49.062 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:50.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:52.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:52.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:52.066 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:52.066 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:52.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:54.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:55.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:55.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:55.089 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:55.089 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:56.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:58.092 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:12:58.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:12:58.093 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:12:58.093 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:12:58.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:12:58.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:13:00.966 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:01.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:01.095 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:01.095 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:01.095 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:02.989 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:04.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:04.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:04.099 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:04.099 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:05.074 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:05.835 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:13:05.835 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:13:05.837 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:13:07.102 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:13:07.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 7
2026-01-21T20:13:07.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 7: 3
2026-01-21T20:13:07.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:13:07.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:13:07.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:13:07.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:13:07.102 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:13:07.102 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:13:07.102 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:13:07.102 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:13:07.113 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:13:07.115 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:13:07.115 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T20:13:07.115 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T20:13:07.115 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T20:13:07.287 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T20:13:08.307 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T20:13:08.986 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:13:09.005 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:12:27.661705
2026-01-21T20:13:09.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:12:27.661705
2026-01-21T20:13:09.005 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:13:09.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:13:09.005 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:13:09.005 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:13:09&start_after=2026-01-20T18:13:09&end_after=2026-01-21T18:13:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:13:09.131 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.134 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.134 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.136 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.136 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.137 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.139 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.139 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.140 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.142 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.143 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:13:09.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:13:09.151 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:13:09.151 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:13:09.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:13:09.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:13:09.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 40.84818
2026-01-21T20:13:09.152 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:13:09.327 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T20:13:10.348 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T20:13:11.154 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:13:11.172 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:13:11.172 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:13:11.172122    Obs time: 2026-01-21 18:13:50
2026-01-21T20:13:11.172 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:38.827878
2026-01-21T20:13:11.172 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  38
2026-01-21T20:13:11.172 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:13:11.369 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-21T20:13:12.390 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-21T20:13:13.439 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T20:13:14.440 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:13:14.606 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T20:13:15.607 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:13:15.609 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.39
2026-01-21T20:13:15.609 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:12:53
2026-01-21T20:13:15.609 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:12:53
2026-01-21T20:13:15.609 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T20:13:15.609 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08765330708661416
2026-01-21T20:13:15.612 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T20:13:15.612 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:13:15.613 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:13:15.613 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:13:15.771 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T20:13:16.772 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:13:16.772 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:13:16.772 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:13:18.078 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:13:18.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:13:22.087 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:13:22.088 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:13:22.088 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:13:22.088 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:13:22.088 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:13:22.088 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:13:22.090 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:13:22.090 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:13:22.092 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:13:22.565 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:13:22.565 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:13:22.567 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019202.567473
2026-01-21T20:13:22.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:13:22.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:13:23.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:23.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:23.138 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:23.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:26.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:26.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:26.142 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:26.142 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:27.800 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:28.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:13:29.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:29.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:29.167 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:29.168 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:29.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:32.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:32.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:32.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:32.187 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:32.187 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:34.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:35.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:35.191 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:35.191 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:35.191 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:36.287 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:38.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:38.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:38.194 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:38.194 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:38.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:13:38.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:40.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:41.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:41.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:41.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:41.217 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:42.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:44.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:44.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:44.219 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:44.219 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:44.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:45.853 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:13:45.853 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:13:45.872 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:13:46.359 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:13:46.360 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019226.360883
2026-01-21T20:13:46.722 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.774/1.0
2026-01-21T20:13:47.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:47.244 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:47.244 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:47.244 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:48.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:13:48.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:50.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:50.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:50.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:50.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:50.802 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:52.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:53.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:53.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:53.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:53.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:55.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:56.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:56.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:56.278 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:56.278 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:13:57.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:58.218 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:13:59.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:13:59.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:13:59.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:13:59.282 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:13:59.282 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:01.323 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:02.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:02.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:02.308 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:02.308 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:03.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:05.311 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:05.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:05.332 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:05.332 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:05.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:07.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:08.267 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:14:08.284 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:13:31.670188
2026-01-21T20:14:08.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:13:31.670188
2026-01-21T20:14:08.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:14:08.316 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:14:08.316 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:14:08.316 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:14:08&start_after=2026-01-20T18:14:08&end_after=2026-01-21T18:14:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:14:08.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:08.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:08.333 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:08.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:08.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.586 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.587 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.587 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.588 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:14:08.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:14:08.594 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:14:08.594 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:14:08.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:14:08.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:14:08.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -18.594951
2026-01-21T20:14:08.595 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:14:09.646 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:14:09.646 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:14:09.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:09.667 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:14:10.597 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:14:10.598 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:14:10.598 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:14:10.598845    Obs time: 2026-01-21 18:13:50
2026-01-21T20:14:10.598 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:39.401155
2026-01-21T20:14:10.598 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86379
2026-01-21T20:14:10.598 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:14:10.598 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:14:11.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:14:11.662 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 7
2026-01-21T20:14:11.662 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 7: 4
2026-01-21T20:14:11.662 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:14:11.662 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:14:11.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:14:11.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:14:11.662 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:14:11.662 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:14:11.662 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:14:11.662 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:14:11.673 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:14:11.674 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:14:11.674 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T20:14:11.674 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T20:14:11.674 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T20:14:11.847 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T20:14:12.868 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T20:14:13.888 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T20:14:14.909 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-21T20:14:15.979 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T20:14:16.980 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:14:17.032 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T20:14:17.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:14:18.033 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:14:18.034 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.38
2026-01-21T20:14:18.034 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:13:57
2026-01-21T20:14:18.035 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:13:57
2026-01-21T20:14:18.035 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T20:14:18.035 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08775535433070863
2026-01-21T20:14:18.039 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T20:14:18.039 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:14:18.039 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:14:18.039 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:14:18.047 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T20:14:19.048 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:14:19.049 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:14:19.049 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:14:20.228 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:14:24.236 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:14:24.254 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:14:24.254 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:14:24.254 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:14:24.254 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:14:24.254 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:14:24.256 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:14:24.256 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:14:24.258 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:14:24.625 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:14:24.625 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:14:24.626 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019264.6268413
2026-01-21T20:14:24.755 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:14:24.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:14:25.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:25.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:25.272 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:25.272 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:27.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:14:28.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:28.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:28.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:28.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:29.845 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:31.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:31.323 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:31.323 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:31.323 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:31.892 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:33.976 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:34.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:34.343 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:34.343 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:34.343 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:36.136 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:37.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:37.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:37.346 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:37.346 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:37.619 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:14:38.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:40.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:40.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:40.371 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:40.371 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:40.371 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:42.339 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:43.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:43.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:43.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:43.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:44.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:46.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:46.398 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:46.398 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:46.398 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:46.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:47.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:14:47.913 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:14:47.914 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:14:47.934 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:14:48.103 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:14:48.105 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019288.1050453
2026-01-21T20:14:48.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.586/1.0
2026-01-21T20:14:49.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:49.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:49.421 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:49.421 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:50.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:52.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:52.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:52.442 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:52.442 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:52.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:54.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:55.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:55.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:55.465 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:55.465 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:56.913 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:14:57.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:14:58.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:14:58.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:14:58.484 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:14:58.484 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:14:59.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:01.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:01.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:01.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:01.486 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:01.486 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:03.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:04.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:04.508 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:04.508 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:04.509 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:05.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:07.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:07.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:07.527 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:07.527 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:07.527 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:07.643 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:15:07.644 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:14:36.962845
2026-01-21T20:15:07.644 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:14:36.962845
2026-01-21T20:15:07.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:15:07.644 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:15:07.644 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:15:07.644 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:15:07&start_after=2026-01-20T18:15:07&end_after=2026-01-21T18:15:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:15:07.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:15:07.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:15:07.787 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:15:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:15:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:15:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:15:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -77.787494
2026-01-21T20:15:07.788 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:15:09.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:09.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:15:09.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:15:09.807 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:15:09.807199    Obs time: 2026-01-21 18:13:50
2026-01-21T20:15:09.807 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:40.192801
2026-01-21T20:15:09.807 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86320
2026-01-21T20:15:09.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:15:09.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:15:10.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:10.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:10.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:10.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:11.386 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:15:11.386 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:15:11.410 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:15:11.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 4/7 Detector state: IDLE Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:13.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:15:13.872 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 7
2026-01-21T20:15:13.872 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 7: 5
2026-01-21T20:15:13.872 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:15:13.872 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:15:13.872 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:15:13.872 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:15:13.872 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:15:13.872 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:15:13.872 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:15:13.872 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:15:13.882 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:15:13.883 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:15:13.883 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T20:15:13.883 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T20:15:13.883 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T20:15:13.922 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T20:15:14.943 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T20:15:15.963 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T20:15:16.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:15:16.984 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-21T20:15:18.038 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T20:15:19.039 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:15:19.204 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T20:15:20.205 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:15:20.206 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.33
2026-01-21T20:15:20.253 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:15:01
2026-01-21T20:15:20.253 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:15:01
2026-01-21T20:15:20.253 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T20:15:20.254 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08989846456692911
2026-01-21T20:15:20.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T20:15:20.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:15:20.257 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:15:20.257 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:15:20.369 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T20:15:21.370 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:15:21.370 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:15:21.370 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:15:22.416 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:15:26.424 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:15:26.444 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:15:26.444 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:15:26.444 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:15:26.444 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:15:26.444 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:15:26.446 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:15:26.446 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:15:26.448 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:15:26.799 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:15:26.799 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:15:26.801 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019326.8012173
2026-01-21T20:15:26.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:15:26.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:15:26.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:15:27.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:27.463 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:27.463 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:27.463 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:30.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:30.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:30.485 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:30.485 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:32.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:33.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:33.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:33.486 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:33.486 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:34.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:36.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:36.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:36.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:36.509 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:36.509 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:36.830 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:15:38.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:39.510 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:39.510 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:39.510 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:39.510 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:40.559 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:42.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:42.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:42.529 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:42.529 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:42.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:44.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:45.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:45.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:45.533 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:45.533 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:46.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:46.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:15:48.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:48.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:48.555 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:48.555 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:48.845 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:50.086 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:15:50.086 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:15:50.106 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:15:50.542 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:15:50.544 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019350.5443816
2026-01-21T20:15:50.892 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.7/1.0
2026-01-21T20:15:51.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:51.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:51.579 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:51.579 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:53.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:54.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:54.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:54.597 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:54.597 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:55.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:56.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:15:57.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:15:57.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:15:57.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:15:57.601 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:15:57.602 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:15:59.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:00.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:00.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:00.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:00.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:01.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:03.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:03.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:03.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:03.627 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:03.627 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:05.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:06.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:06.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:06.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:06.653 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:06.857 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:16:06.857 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:15:43.773247
2026-01-21T20:16:06.857 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:15:43.773247
2026-01-21T20:16:06.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:16:06.858 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:16:06.858 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:16:06.858 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:16:06&start_after=2026-01-20T18:16:06&end_after=2026-01-21T18:16:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:16:07.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.017 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:16:07.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:16:07.028 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:16:07.028 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:16:07.028 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:16:07.028 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:16:07.028 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -137.028485
2026-01-21T20:16:07.029 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:16:07.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:09.031 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:16:09.045 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:16:09.045 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:16:09.045453    Obs time: 2026-01-21 18:13:50
2026-01-21T20:16:09.045 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:40.954547
2026-01-21T20:16:09.045 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86260
2026-01-21T20:16:09.045 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:16:09.045 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:16:09.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:09.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:09.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:09.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:09.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:11.824 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:12.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:12.679 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:12.709 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:12.709 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:13.828 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:16:13.828 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:16:13.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 5/7 Detector state: IDLE Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:13.850 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:16:15.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:16:15.849 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 7
2026-01-21T20:16:15.849 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 6 of 7: 6
2026-01-21T20:16:15.849 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:16:15.849 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:16:15.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:16:15.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:16:15.849 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:16:15.849 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:16:15.849 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:16:15.849 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:16:15.859 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:16:15.860 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:16:15.860 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T20:16:15.860 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:16:15.860 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:16:16.032 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T20:16:16.051 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:16:17.052 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T20:16:18.072 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T20:16:19.092 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T20:16:20.113 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T20:16:21.134 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T20:16:22.154 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T20:16:23.208 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:16:24.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T20:16:24.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 3
2026-01-21T20:16:24.257 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:3
2026-01-21T20:16:24.257 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 3
2026-01-21T20:16:24.411 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:16:25.412 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:16:25.464 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:16:26.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:16:26.465 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:16:26.466 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.38
2026-01-21T20:16:26.466 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:16:05
2026-01-21T20:16:26.466 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:16:05
2026-01-21T20:16:26.466 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -25.6, 2698
2026-01-21T20:16:26.466 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08164850393700784
2026-01-21T20:16:26.469 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 3
2026-01-21T20:16:26.469 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:16:26.469 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:16:27.499 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:16:31.508 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:16:31.509 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:16:31.509 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:16:31.509 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:16:31.509 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:16:31.510 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:16:31.512 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:16:31.512 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:16:31.513 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:16:31.663 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:16:31.663 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:16:31.664 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019391.6649268
2026-01-21T20:16:32.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:16:32.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:16:32.511 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:32.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:32.533 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:32.533 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:35.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:35.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:35.537 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:35.537 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:36.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:16:37.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:38.538 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:38.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:38.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:38.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:39.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:41.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:41.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:41.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:41.561 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:41.561 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:43.184 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:44.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:44.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:44.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:44.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:45.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:46.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:16:47.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:47.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:47.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:47.585 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:47.585 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:49.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:50.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:50.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:50.607 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:50.607 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:51.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:53.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:53.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:53.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:53.611 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:53.611 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:54.946 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:16:54.946 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:16:54.963 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:16:55.067 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:16:55.069 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019415.0690591
2026-01-21T20:16:55.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.733/1.0
2026-01-21T20:16:56.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:16:56.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:56.630 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:56.630 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:56.630 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:16:57.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:59.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:16:59.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:16:59.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:16:59.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:16:59.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:01.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:02.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:02.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:02.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:02.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:03.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:05.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:05.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:05.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:05.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:05.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:06.095 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:17:06.096 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:16:50.469500
2026-01-21T20:17:06.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:16:50.469500
2026-01-21T20:17:06.096 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:17:06.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:17:06.096 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:17:06.096 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:17:06&start_after=2026-01-20T18:17:06&end_after=2026-01-21T18:17:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:17:06.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.239 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.241 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.241 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.242 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.243 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.244 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:17:06.246 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.247 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.248 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:17:06.249 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:17:06.249 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:17:06.249 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:17:06.249 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:17:06.249 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -196.249612
2026-01-21T20:17:06.250 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:17:07.549 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:08.252 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:17:08.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:17:08.253 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:17:08.253405    Obs time: 2026-01-21 18:13:50
2026-01-21T20:17:08.253 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:41.746595
2026-01-21T20:17:08.253 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86201
2026-01-21T20:17:08.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:17:08.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:17:08.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:08.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:08.686 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:08.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:09.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:11.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:11.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:11.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:11.689 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:11.689 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:13.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:14.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:14.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:14.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:14.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:15.260 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:17:15.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:17.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:17.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:17.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:17.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:17.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:18.356 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:17:18.356 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:17:18.358 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:17:20.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:17:20.701 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 6 of 7
2026-01-21T20:17:20.701 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 7 of 7: 7
2026-01-21T20:17:20.701 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:17:20.701 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:17:20.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:17:20.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:17:20.701 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:17:20.701 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:17:20.701 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:17:20.701 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:17:20.711 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:17:20.712 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:17:20.712 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T20:17:20.712 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:17:20.712 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:17:20.776 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:17:21.777 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T20:17:21.777 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T20:17:21.777 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T20:17:21.777 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T20:17:21.829 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:17:22.829 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:17:22.881 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:17:23.883 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:17:23.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.56
2026-01-21T20:17:23.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:16:38
2026-01-21T20:17:23.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:16:38
2026-01-21T20:17:23.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T20:17:23.884 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0895974803149606
2026-01-21T20:17:23.887 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T20:17:23.888 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:17:23.888 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:17:24.921 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:17:25.271 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:17:28.929 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:17:28.945 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:02:07.87', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:59.27', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:17:28.945 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:17:28.946 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:17:28.946 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:17:28.946 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:17:28.948 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:17:28.948 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:17:28.949 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:17:29.061 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:17:29.061 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:17:29.063 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019449.0633504
2026-01-21T20:17:29.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:17:29.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:17:29.947 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:29.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:29.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:29.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:32.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:32.990 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:32.990 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:32.990 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:34.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:35.281 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:17:35.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:36.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:36.010 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:36.010 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:36.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:38.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:39.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:39.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:39.035 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:39.035 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:40.602 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:42.038 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:42.039 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:42.039 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:42.039 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:42.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:44.658 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:45.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:45.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:45.061 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:45.061 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:45.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:17:46.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:48.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:48.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:48.065 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:48.065 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:48.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:50.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:51.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:51.087 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:51.087 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:51.087 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:52.347 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:17:52.394 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:17:52.411 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:17:52.513 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:17:52.515 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019472.5155325
2026-01-21T20:17:52.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.763/1.0
2026-01-21T20:17:54.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:54.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:54.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:54.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:54.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:55.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:17:56.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:17:57.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:17:57.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:17:57.109 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:17:57.109 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:17:58.867 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:00.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:18:00.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:18:00.113 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:18:00.113 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:18:00.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:02.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:03.116 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:18:03.131 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:18:03.131 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:18:03.131 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:18:04.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:05.309 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:18:05.327 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:17:56.203618
2026-01-21T20:18:05.327 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:17:56.203618
2026-01-21T20:18:05.327 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:18:05.327 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:18:05.328 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:18:05.328 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:18:05&start_after=2026-01-20T18:18:05&end_after=2026-01-21T18:18:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:18:05.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.455 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.458 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.462 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:18:05.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.469 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:18:05.471 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:18:05.471 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:18:05.471 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:18:05.471 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:18:05.471 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -255.471535
2026-01-21T20:18:05.472 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:18:06.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:18:06.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:18:06.135 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:18:06.135 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:18:06.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:07.474 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:18:07.493 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:18:07.493 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:18:07.493072    Obs time: 2026-01-21 18:13:50
2026-01-21T20:18:07.493 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:42.506928
2026-01-21T20:18:07.493 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86142
2026-01-21T20:18:07.493 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:18:07.493 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:18:09.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:09.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:18:09.156 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:18:09.156 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:18:09.156 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:18:11.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:12.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:18:12.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:18:12.159 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:18:12.159 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:18:13.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:14.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:18:15.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_flats_17224700_13495_13541.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:18:15.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:18:15.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:18:15.163 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:18:15.163 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:18:15.799 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:18:15.799 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:18:15.819 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:18:18.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:18:18.165 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 7 of 7
2026-01-21T20:18:18.165 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:18:18.165 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:18:18.889 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:18:18.889 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script 1x1HighSlowAuto_flats_17224700_13495_13541.json was run successfully
2026-01-21T20:18:18.889 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17503453 COMPLETED 13541 reason
2026-01-21T20:18:18.889 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17503453 COMPLETED 13541 reason
2026-01-21T20:18:18.889 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:18:18.889 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:18:18.889 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:18:18.889 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:18:18.889 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:18:18.889 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:18:21.893 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:18:21.893 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:18:23.895 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:18:23.895 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:18:23.895 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T20:18:23.895 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T20:18:23.895 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T20:18:23.900 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T20:18:23.900 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T18:17:10Z
2026-01-21T20:18:23.900 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T20:18:23.900 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T20:18:23.900 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T20:18:23.900 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T20:18:23.901 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T20:18:23.901 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:18:23.901 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:18:24.401 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:18:24.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T20:18:24.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:18:24.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:18:24.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:18:24.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:18:24.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:18:24.401 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:18:24.402 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T20:18:24.403 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 02:10:37.82316   Targ dec = -30:12:44.1504
2026-01-21T20:18:24.403 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:18:24.403 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:18:24.403 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:18:24.411 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:18:24.411 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:18:24.411 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:18:24.411 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:18:24.509 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:18:25.458 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:18:27.460 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:18:27.460 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:18:27.460 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:18:27.905 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:18:27.905 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T20:18:27.905 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T20:18:27.905 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T20:18:27.905 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T20:18:27.905 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17503453
2026-01-21T20:18:27.905 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T20:18:27.905 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T20:18:27.905 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T18:09:14', 'end': '2026-01-21T18:18:27', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '553.0', 'events': {}}} with config status ID 17503453
2026-01-21T20:18:28.070 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:18:28.070 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:08:50Z', 'guide_off', 'config_id 13541', 'config_status_id 17503453', 'update_OCS 17503453 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_flats_17224700_13495_13541.json', 'run_script 1x1HighSlowAuto_flats_17224700_13495_13541.json', 'update_OCS 17503453 COMPLETED 13541 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:17:10Z', 'run_script arc_flat_lamp_off.json'] at time 20:18:28
2026-01-21T20:18:34.520 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:18:44.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:18:54.541 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:19:04.551 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:19:04.552 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:19:01.371273
2026-01-21T20:19:04.552 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:19:01.371273
2026-01-21T20:19:04.552 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:19:04.552 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:19:04.553 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:19:04.553 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:19:04&start_after=2026-01-20T18:19:04&end_after=2026-01-21T18:19:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:19:04.669 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.671 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.674 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.674 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.675 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.676 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.677 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.679 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.682 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.683 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:19:04.686 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:19:04.688 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:19:04.688 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 18 configurations
2026-01-21T20:19:04.689 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:19:04.689 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:13:50Z
2026-01-21T20:19:04.689 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -314.689162
2026-01-21T20:19:04.690 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:19:06.692 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:19:06.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:19:06.693 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:19:06.693291    Obs time: 2026-01-21 18:13:50
2026-01-21T20:19:06.693 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:54:43.306709
2026-01-21T20:19:06.693 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86083
2026-01-21T20:19:06.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:19:06.693 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T20:19:06.693 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T20:19:06.693 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T20:19:06.693 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T20:19:06.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:19:06.693 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T20:19:06.694 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T20:19:06.694 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T20:19:06.694 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T20:19:06.694 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T20:19:06.694 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:19:06.694 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:19:06.694 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:19:06.694 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:19:06.694 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:19:06.695 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:19:09.698 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:19:09.698 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:19:11.700 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:19:11.700 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:19:11.700 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T18:13:50Z
2026-01-21T20:19:11.700 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T18:13:50Z
2026-01-21T20:19:11.700 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:19:11.700 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:19:11.700 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:19:11.700 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:19:11.700 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:19:11.700 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:19:13.701 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:19:14.703 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:19:14.703 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:19:16.705 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13542
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13542
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17503454
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17503454
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17503454 ATTEMPTED
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17503454 ATTEMPTED
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 2.11918, 'targ_dec': -30.331517733588413, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_2x2HighSlowAuto_flats_17224701_13496_13542.json'}
2026-01-21T20:19:16.706 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:19:16.706 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17503454
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T20:19:16.706 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17503454
2026-01-21T20:19:16.771 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:19:17.207 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:19:17.207 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json 1 times
2026-01-21T20:19:17.207 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:19:17.209 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T20:19:17.209 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T20:19:17.209 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T20:19:20.236 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:21.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:22.271 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:23.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:23.711 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:19:24.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:25.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:26.360 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:27.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:28.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:29.424 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:30.445 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:31.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:32.489 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:33.510 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:19:33.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:19:34.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  2.11938523860423 is close enough to target ra = 2.11918
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -30.3334059700332 is close enough to target dec = -30.331517733588413
2026-01-21T20:19:34.532 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T20:19:34.532 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:19:34.532 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:19:34.532 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:19:34.532 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:19:34.533 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:19:34.533 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:19:35.588 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:19:37.590 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:19:37.590 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:19:37.590 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:19:37.792 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:19:37.792 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json was run successfully
2026-01-21T20:19:37.792 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:37.792 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:37.792 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name 2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:37.792 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script 2x2HighSlowAuto_flats_17224701_13496_13542.json
2026-01-21T20:19:37.793 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 1, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 3000, 'num_exposures': 2}}, {'unit_number': 2, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 3, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 4, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 5, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 6, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}, {'unit_number': 7, 'instrument': {'object': 'flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:07:09.05', 'targ_dec': '-30:19:53.46', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 1000, 'num_exposures': 2}}], 'script_name': '2x2HighSlowAuto_flats_17224701_13496_13542.json'}
2026-01-21T20:19:37.793 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:19:37.793 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:19:38.293 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:19:38.293 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script 2x2HighSlowAuto_flats_17224701_13496_13542.json 1 times
2026-01-21T20:19:38.293 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 7: 1
2026-01-21T20:19:38.293 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:19:38.293 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:19:38.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:19:38.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:19:38.294 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:19:38.294 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:19:38.294 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:19:38.294 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:19:38.305 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:19:38.306 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:19:38.306 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 1
2026-01-21T20:19:38.306 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:1
2026-01-21T20:19:38.306 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 1
2026-01-21T20:19:38.482 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 1
2026-01-21T20:19:39.503 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 2
2026-01-21T20:19:40.523 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 3
2026-01-21T20:19:41.544 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 4
2026-01-21T20:19:42.584 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 1 successfully
2026-01-21T20:19:43.585 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:19:43.599 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-21T20:19:43.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:19:44.601 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:19:44.603 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.35
2026-01-21T20:19:44.604 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:19:18
2026-01-21T20:19:44.604 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:19:18
2026-01-21T20:19:44.604 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.19, 2879
2026-01-21T20:19:44.604 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09782572834645667
2026-01-21T20:19:44.608 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 1
2026-01-21T20:19:44.608 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:19:44.608 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:19:44.608 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:19:44.653 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-21T20:19:45.655 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:19:45.655 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:19:45.655 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:19:46.704 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:19:50.717 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:19:50.719 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:19:50.720 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:19:50.720 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:19:50.720 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:19:50.721 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:19:50.724 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:19:50.725 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:19:50.731 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:19:50.844 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:19:50.844 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:19:50.848 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019590.8481784
2026-01-21T20:19:51.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:19:51.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:19:51.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:19:51.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:19:51.744 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:19:51.744 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:19:53.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:19:54.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:19:54.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:19:54.749 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:19:54.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:19:56.331 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:19:57.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:19:57.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:19:57.771 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:19:57.771 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:19:58.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:20:00.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/3.0
2026-01-21T20:20:00.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:00.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:00.775 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:00.775 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:01.170 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:20:01.170 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:20:01.176 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:20:01.296 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:20:01.300 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019601.3001945
2026-01-21T20:20:02.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 1.838/3.0
2026-01-21T20:20:03.757 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:20:03.776 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:19:01.371273
2026-01-21T20:20:03.776 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:19:01.371273
2026-01-21T20:20:03.776 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:20:03.776 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:20:03.777 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:20:03.777 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:20:03&start_after=2026-01-20T18:20:03&end_after=2026-01-21T18:20:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:20:03.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:03.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:03.784 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:03.784 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:03.917 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.921 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.940 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.942 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.952 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.954 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:20:03.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.959 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.960 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:20:03.961 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:20:03.961 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T20:20:03.961 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:20:03.961 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:18:50Z
2026-01-21T20:20:03.961 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -73.961469
2026-01-21T20:20:03.962 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:20:04.604 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:20:05.964 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:20:05.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:20:05.988 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:20:05.988340    Obs time: 2026-01-21 18:18:50
2026-01-21T20:20:05.988 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:44.011660
2026-01-21T20:20:05.988 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86324
2026-01-21T20:20:05.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:18:50Z', 'guide_off', 'config_id 13543', 'config_status_id 17503455', 'update_OCS 17503455 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'update_OCS 17503455 COMPLETED 13543 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:27:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:20:05.989 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:20:06.672 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:20:06.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:06.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:06.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:06.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:08.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 1/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/3.0
2026-01-21T20:20:09.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:09.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:09.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:09.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:10.584 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:20:10.584 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:20:10.591 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:20:12.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:20:12.818 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 7
2026-01-21T20:20:12.818 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 7: 2
2026-01-21T20:20:12.818 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:20:12.818 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:20:12.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:20:12.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:20:12.818 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:20:12.819 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:20:12.819 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:20:12.819 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:20:12.835 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:20:12.839 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:20:12.839 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-21T20:20:12.839 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-21T20:20:12.839 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-21T20:20:12.891 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-21T20:20:12.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:20:13.911 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-21T20:20:14.931 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-21T20:20:15.951 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-21T20:20:16.972 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 5
2026-01-21T20:20:17.992 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 6
2026-01-21T20:20:19.058 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-21T20:20:20.060 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:20:20.111 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T20:20:21.113 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:20:21.115 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.28
2026-01-21T20:20:21.115 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:19:50
2026-01-21T20:20:21.115 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:19:50
2026-01-21T20:20:21.115 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-21T20:20:21.116 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0892566929133858
2026-01-21T20:20:21.120 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-21T20:20:21.120 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:20:21.120 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:20:21.120 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:20:21.164 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T20:20:22.165 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:20:22.166 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:20:22.166 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:20:23.007 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:20:23.215 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:20:27.226 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:20:27.276 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:20:27.277 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:20:27.277 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:20:27.277 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:20:27.278 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:20:27.281 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:20:27.282 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:20:27.287 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:20:27.429 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:20:27.430 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:20:27.433 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019627.4335437
2026-01-21T20:20:27.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:20:27.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:20:28.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:28.299 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:28.299 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:28.299 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:31.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:31.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:31.321 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:31.321 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:32.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:20:33.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:20:34.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:34.343 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:34.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:34.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:34.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 2/7 Detector state: IDLE Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:20:35.714 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:20:35.714 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:20:35.738 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:20:35.853 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:20:35.856 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019635.8567414
2026-01-21T20:20:37.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:20:37.347 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:37.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:37.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:37.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:39.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:20:40.400 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:20:40.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:20:40.420 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:20:40.420 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:20:41.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 2/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:20:43.031 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:20:43.136 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:20:43.136 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:20:43.143 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:20:43.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 2/7 Detector state: IDLE Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:20:43.423 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:20:45.225 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 7
2026-01-21T20:20:45.225 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 7: 3
2026-01-21T20:20:45.225 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:20:45.225 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:20:45.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:20:45.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:20:45.225 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:20:45.225 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:20:45.225 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:20:45.225 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:20:45.236 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:20:45.237 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:20:45.237 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T20:20:45.237 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T20:20:45.237 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T20:20:45.430 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T20:20:46.449 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T20:20:47.469 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T20:20:48.490 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T20:20:49.511 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-21T20:20:50.532 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-21T20:20:51.603 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T20:20:52.605 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:20:52.656 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T20:20:53.042 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:20:53.657 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:20:53.658 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.31
2026-01-21T20:20:53.658 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:20:23
2026-01-21T20:20:53.658 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:20:23
2026-01-21T20:20:53.658 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T20:20:53.658 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08770181102362204
2026-01-21T20:20:53.662 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T20:20:53.662 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:20:53.662 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:20:53.662 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:20:53.709 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T20:20:54.710 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:20:54.710 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:20:54.710 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:20:55.777 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:20:59.787 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:20:59.806 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:20:59.806 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:20:59.806 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:20:59.806 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:20:59.806 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:20:59.808 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:20:59.808 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:20:59.810 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:00.028 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:21:00.028 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:21:00.030 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019660.030284
2026-01-21T20:21:00.307 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:21:00.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:21:00.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:00.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:00.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:00.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:03.087 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:21:03.088 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:20:10.154426
2026-01-21T20:21:03.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:20:10.154426
2026-01-21T20:21:03.096 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:21:03.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:21:03.096 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:21:03.096 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:21:03&start_after=2026-01-20T18:21:03&end_after=2026-01-21T18:21:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:21:03.327 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.337 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.342 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:21:03.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:21:03.347 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:21:03.347 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T20:21:03.347 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:21:03.347 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:18:50Z
2026-01-21T20:21:03.347 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -133.347298
2026-01-21T20:21:03.348 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:21:03.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:03.847 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:03.847 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:03.847 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:05.350 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:21:05.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:21:05.367 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:21:05.367286    Obs time: 2026-01-21 18:18:50
2026-01-21T20:21:05.367 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:44.632714
2026-01-21T20:21:05.367 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86264
2026-01-21T20:21:05.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:18:50Z', 'guide_off', 'config_id 13543', 'config_status_id 17503455', 'update_OCS 17503455 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'update_OCS 17503455 COMPLETED 13543 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:27:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:21:05.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:21:05.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:06.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:06.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:06.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:06.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:07.294 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:21:07.294 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:21:07.296 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:07.512 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:21:07.514 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019667.5143461
2026-01-21T20:21:07.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 3/7 Detector state: IDLE Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:09.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:09.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:09.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:09.891 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:09.891 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:11.721 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:12.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:21:12.892 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:12.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:12.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:12.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:13.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 3/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:14.778 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:21:14.778 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:21:14.780 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:15.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:21:15.897 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 7
2026-01-21T20:21:15.897 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 7: 4
2026-01-21T20:21:15.897 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:21:15.897 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:21:15.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:21:15.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:21:15.897 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:21:15.897 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:21:15.897 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:21:15.897 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:21:15.908 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:21:15.909 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:21:15.909 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T20:21:15.909 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T20:21:15.909 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T20:21:16.096 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T20:21:17.116 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T20:21:18.137 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T20:21:19.158 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-21T20:21:20.233 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T20:21:21.233 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:21:21.248 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T20:21:22.249 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:21:22.250 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.28
2026-01-21T20:21:22.250 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:20:55
2026-01-21T20:21:22.250 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:20:55
2026-01-21T20:21:22.250 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T20:21:22.250 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08781559055118109
2026-01-21T20:21:22.254 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T20:21:22.254 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:21:22.254 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:21:22.254 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:21:22.301 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T20:21:22.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:21:23.302 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:21:23.302 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:21:23.302 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:21:24.355 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:21:28.365 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:21:28.385 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:21:28.385 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:21:28.385 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:21:28.385 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:21:28.385 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:21:28.387 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:21:28.387 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:21:28.389 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:28.531 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:21:28.531 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:21:28.532 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019688.53284
2026-01-21T20:21:28.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:21:28.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:21:29.386 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:29.407 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:29.407 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:29.407 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:32.393 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:21:32.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:32.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:32.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:32.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:33.982 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:35.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:35.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:35.430 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:35.430 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:35.797 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:21:35.797 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:21:35.818 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:35.939 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:21:35.940 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019695.9406981
2026-01-21T20:21:36.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.959/1.0
2026-01-21T20:21:38.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:38.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:38.456 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:38.456 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:38.456 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:40.148 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:41.459 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:41.460 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:41.460 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:41.460 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:42.216 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 4/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:21:42.400 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:21:43.204 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:21:43.205 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:21:43.225 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:44.463 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:21:44.464 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 7
2026-01-21T20:21:44.472 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 7: 5
2026-01-21T20:21:44.473 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:21:44.473 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:21:44.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:21:44.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:21:44.473 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:21:44.473 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:21:44.473 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:21:44.473 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:21:44.483 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:21:44.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:21:44.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T20:21:44.484 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T20:21:44.484 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T20:21:44.524 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T20:21:45.545 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T20:21:46.566 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T20:21:47.608 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T20:21:48.609 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:21:48.661 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T20:21:49.662 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:21:49.664 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.28
2026-01-21T20:21:49.711 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:20:55
2026-01-21T20:21:49.711 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:20:55
2026-01-21T20:21:49.711 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T20:21:49.711 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08993055118110234
2026-01-21T20:21:49.714 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T20:21:49.714 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:21:49.714 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:21:49.714 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:21:49.751 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T20:21:50.752 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:21:50.753 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:21:50.753 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:21:51.804 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:21:52.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:21:55.811 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:21:55.832 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:21:55.832 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:21:55.832 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:21:55.832 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:21:55.832 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:21:55.834 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:21:55.834 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:21:55.836 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:21:55.980 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:21:55.980 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:21:55.982 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019715.9821177
2026-01-21T20:21:56.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:21:56.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:21:56.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:56.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:56.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:56.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:21:59.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:21:59.854 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:21:59.854 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:21:59.854 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:01.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:02.420 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:22:02.441 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:21:15.063093
2026-01-21T20:22:02.441 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:21:15.063093
2026-01-21T20:22:02.441 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:22:02.441 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:22:02.441 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:22:02.441 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:22:02&start_after=2026-01-20T18:22:02&end_after=2026-01-21T18:22:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:22:02.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.596 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.596 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.598 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.600 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.601 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.601 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:22:02.604 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.606 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:22:02.607 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:22:02.608 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T20:22:02.608 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:22:02.608 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:18:50Z
2026-01-21T20:22:02.608 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -192.608187
2026-01-21T20:22:02.609 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:22:02.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:02.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:02.858 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:02.858 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:03.246 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:22:03.246 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:03.248 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:03.425 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:22:03.427 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019723.4274652
2026-01-21T20:22:03.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.996/1.0
2026-01-21T20:22:04.611 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:22:04.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:22:04.612 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:22:04.612183    Obs time: 2026-01-21 18:18:50
2026-01-21T20:22:04.612 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:45.387817
2026-01-21T20:22:04.612 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86205
2026-01-21T20:22:04.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:18:50Z', 'guide_off', 'config_id 13543', 'config_status_id 17503455', 'update_OCS 17503455 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'update_OCS 17503455 COMPLETED 13543 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:27:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:22:04.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:22:05.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:05.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:05.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:05.881 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:05.881 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:07.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:08.884 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:08.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:08.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:08.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:09.591 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 5/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:10.691 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:22:10.691 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:10.713 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:11.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:22:11.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:22:11.904 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 7
2026-01-21T20:22:11.904 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 6 of 7: 6
2026-01-21T20:22:11.904 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:22:11.904 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:22:11.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:22:11.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:22:11.904 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:22:11.904 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:22:11.904 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:22:11.904 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:22:11.913 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:22:11.915 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:22:11.915 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T20:22:11.915 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:22:11.915 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:22:12.101 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T20:22:13.120 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T20:22:14.140 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T20:22:15.161 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T20:22:16.181 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T20:22:17.202 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T20:22:18.223 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T20:22:19.271 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:22:20.272 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T20:22:20.272 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 3
2026-01-21T20:22:20.272 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:3
2026-01-21T20:22:20.272 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 3
2026-01-21T20:22:20.324 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:22:21.325 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:22:21.377 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:22:21.628 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:22:22.378 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:22:22.379 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.26
2026-01-21T20:22:22.379 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:21:27
2026-01-21T20:22:22.379 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:21:27
2026-01-21T20:22:22.379 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -25.6, 2698
2026-01-21T20:22:22.379 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08176944881889762
2026-01-21T20:22:22.383 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 3
2026-01-21T20:22:22.383 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:22:22.383 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:22:23.417 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:22:27.426 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:22:27.427 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:22:27.475 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:22:27.475 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:22:27.475 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:22:27.475 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:22:27.477 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:22:27.477 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:27.479 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:27.585 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:22:27.585 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:22:27.587 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019747.5870671
2026-01-21T20:22:27.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:22:27.976 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:22:28.476 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:28.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:28.499 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:28.499 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:31.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:31.502 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:31.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:31.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:31.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:22:33.037 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:34.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:34.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:34.528 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:34.528 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:34.849 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:22:34.849 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:34.851 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:34.965 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:22:34.966 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019754.9668055
2026-01-21T20:22:35.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.931/1.0
2026-01-21T20:22:37.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:37.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:37.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:37.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:37.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:39.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:40.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:40.568 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:40.568 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:40.568 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:41.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 6/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:41.647 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:22:42.228 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:22:42.228 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:42.246 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:43.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:22:43.572 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 6 of 7
2026-01-21T20:22:43.620 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 7 of 7: 7
2026-01-21T20:22:43.620 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:22:43.620 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:22:43.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Doing flats
2026-01-21T20:22:43.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:22:43.620 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:22:43.620 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:22:43.620 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:22:43.620 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:22:43.629 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:22:43.631 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:22:43.631 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T20:22:43.631 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:22:43.631 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:22:43.675 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:22:44.677 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T20:22:44.677 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T20:22:44.677 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T20:22:44.677 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T20:22:44.691 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:22:45.692 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:22:45.744 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:22:46.745 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:22:46.747 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.26
2026-01-21T20:22:46.747 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:21:59
2026-01-21T20:22:46.747 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:21:59
2026-01-21T20:22:46.747 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T20:22:46.747 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08977937007874012
2026-01-21T20:22:46.750 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T20:22:46.750 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:22:46.750 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:22:47.804 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:22:51.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:22:51.812 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Taking flats, so defocussing and turning off tracking
2026-01-21T20:22:51.813 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:07:09.05', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:53.46', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='flat', comment='The object name')]
2026-01-21T20:22:51.813 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:22:51.813 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:22:51.813 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:22:51.814 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:22:51.815 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:22:51.816 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:51.817 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:51.942 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:22:51.942 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:22:51.944 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019771.9442408
2026-01-21T20:22:52.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:22:52.314 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:22:52.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:52.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:52.834 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:52.834 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:55.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:55.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:55.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:55.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:57.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/1.0
2026-01-21T20:22:58.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:22:58.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:22:58.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:22:58.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:22:59.254 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:22:59.254 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:22:59.256 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:22:59.387 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:22:59.389 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019779.3894815
2026-01-21T20:22:59.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.996/1.0
2026-01-21T20:23:01.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:23:01.667 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:23:01.668 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:22:20.486232
2026-01-21T20:23:01.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:22:20.486232
2026-01-21T20:23:01.668 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:23:01.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:23:01.668 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:23:01.668 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:23:01&start_after=2026-01-20T18:23:01&end_after=2026-01-21T18:23:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:23:01.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.846 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:23:01.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.853 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:23:01.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:23:01.854 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T20:23:01.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:23:01.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:18:50Z
2026-01-21T20:23:01.855 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -251.855007
2026-01-21T20:23:01.855 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:23:01.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:23:01.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:23:01.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:23:01.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:23:03.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:23:03.857 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:23:03.857 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:23:03.857 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:23:03.857939    Obs time: 2026-01-21 18:18:50
2026-01-21T20:23:03.857 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:46.142061
2026-01-21T20:23:03.858 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86146
2026-01-21T20:23:03.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:18:50Z', 'guide_off', 'config_id 13543', 'config_status_id 17503455', 'update_OCS 17503455 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'update_OCS 17503455 COMPLETED 13543 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:27:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:23:03.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:23:04.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:23:04.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:23:04.902 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:23:04.903 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:23:05.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 2x2HighSlowAuto_flats_17224701_13496_13542.json , Iteration 1/1, Unit 7/7 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/1.0
2026-01-21T20:23:06.653 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:23:06.654 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:23:06.676 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:23:07.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:23:07.906 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 7 of 7
2026-01-21T20:23:07.906 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:23:07.906 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:23:08.010 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:23:08.010 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script 2x2HighSlowAuto_flats_17224701_13496_13542.json was run successfully
2026-01-21T20:23:08.010 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17503454 COMPLETED 13542 reason
2026-01-21T20:23:08.010 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17503454 COMPLETED 13542 reason
2026-01-21T20:23:08.010 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:23:08.010 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:23:08.010 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:23:08.010 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:23:08.010 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:23:08.010 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:23:10.863 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:23:11.013 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:23:11.013 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:23:13.015 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:23:13.016 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:23:13.016 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T20:23:13.016 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T20:23:13.016 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T20:23:13.020 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T20:23:13.020 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T18:22:10Z
2026-01-21T20:23:13.021 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T20:23:13.021 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T20:23:13.021 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T20:23:13.021 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T20:23:13.021 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T20:23:13.021 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:23:13.021 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:23:13.521 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:23:13.521 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T20:23:13.522 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:23:13.522 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:23:13.522 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:23:13.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:23:13.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:23:13.522 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:23:13.522 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T20:23:13.543 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 02:11:44.95992   Targ dec = -30:12:43.974
2026-01-21T20:23:13.543 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:23:13.543 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:23:13.543 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:23:13.550 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:23:13.550 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:23:13.550 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:23:13.550 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:23:14.614 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:23:16.616 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:23:16.616 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:23:16.617 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:23:17.025 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:23:17.025 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T20:23:17.025 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T20:23:17.025 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T20:23:17.025 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T20:23:17.025 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17503454
2026-01-21T20:23:17.025 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T20:23:17.025 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T20:23:17.026 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T18:19:06', 'end': '2026-01-21T18:23:17', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '251.0', 'events': {}}} with config status ID 17503454
2026-01-21T20:23:17.133 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:23:17.133 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:13:50Z', 'guide_off', 'config_id 13542', 'config_status_id 17503454', 'update_OCS 17503454 ATTEMPTED', 'run_script setup_2x2HighSlowAuto_flats_17224701_13496_13542.json', 'run_script 2x2HighSlowAuto_flats_17224701_13496_13542.json', 'update_OCS 17503454 COMPLETED 13542 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:22:10Z', 'run_script arc_flat_lamp_off.json'] at time 20:23:17
2026-01-21T20:23:20.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:23:30.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:23:40.894 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:23:50.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:24:00.915 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:24:00.930 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:23:25.407757
2026-01-21T20:24:00.930 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:23:25.407757
2026-01-21T20:24:00.930 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:24:00.930 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:24:00.930 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:24:00.930 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:24:00&start_after=2026-01-20T18:24:00&end_after=2026-01-21T18:24:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:24:01.047 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.047 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.050 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:24:01.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:24:01.064 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:24:01.064 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T20:24:01.064 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:24:01.064 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:18:50Z
2026-01-21T20:24:01.064 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -311.064398
2026-01-21T20:24:01.065 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:24:03.067 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:24:03.082 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:24:03.082 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:24:03.082791    Obs time: 2026-01-21 18:18:50
2026-01-21T20:24:03.082 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:54:46.917209
2026-01-21T20:24:03.082 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86086
2026-01-21T20:24:03.082 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:18:50Z', 'guide_off', 'config_id 13543', 'config_status_id 17503455', 'update_OCS 17503455 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'update_OCS 17503455 COMPLETED 13543 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:27:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:24:03.082 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T20:24:03.083 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T20:24:03.083 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T20:24:03.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:24:03.083 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T20:24:03.083 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:24:03.084 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:24:03.084 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:24:03.084 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:24:03.084 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:24:06.087 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:24:06.087 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:24:08.089 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:24:08.089 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:24:08.089 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T18:18:50Z
2026-01-21T20:24:08.089 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T18:18:50Z
2026-01-21T20:24:08.089 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:24:08.089 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:24:08.089 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:24:08.089 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:24:08.089 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:24:08.089 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:24:10.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:24:11.091 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:24:11.091 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:24:13.093 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:24:13.093 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13543
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13543
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17503455
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17503455
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17503455 ATTEMPTED
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17503455 ATTEMPTED
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 2.20284, 'targ_dec': -30.32984716469545, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': False, 'targ_ra': '02:12:10.21', 'targ_dec': '-30:19:47.45', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json'}
2026-01-21T20:24:13.094 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:24:13.094 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17503455
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T20:24:13.094 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17503455
2026-01-21T20:24:13.167 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:24:13.595 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:24:13.595 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json 1 times
2026-01-21T20:24:13.595 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:24:13.597 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T20:24:13.597 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T20:24:13.597 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T20:24:16.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:17.638 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:18.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:19.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:20.101 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:24:20.680 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:21.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:22.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:23.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:24.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:25.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:26.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:27.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:28.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:24:29.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T20:24:29.862 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  2.20305292537079 is close enough to target ra = 2.20284
2026-01-21T20:24:29.862 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -30.3317151216796 is close enough to target dec = -30.32984716469545
2026-01-21T20:24:29.862 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T20:24:29.862 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:24:29.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:24:29.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:24:29.863 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:24:29.863 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:24:29.863 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:24:29.863 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:24:29.863 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:24:29.863 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:24:29.863 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:24:29.863 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:24:30.111 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:24:30.905 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:24:32.908 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:24:32.908 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:24:32.908 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:24:33.188 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:24:33.188 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json was run successfully
2026-01-21T20:24:33.188 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:33.188 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:33.188 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:33.188 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json
2026-01-21T20:24:33.188 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'slit_flat', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '02:12:10.21', 'targ_dec': '-30:19:47.45', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 5000, 'num_exposures': 2}}], 'script_name': '1x1HighSlowAuto_slit_flats_17224702_13497_13543.json'}
2026-01-21T20:24:33.189 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:24:33.189 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:24:33.689 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:24:33.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json 1 times
2026-01-21T20:24:33.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:24:33.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:24:33.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:24:33.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:24:33.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:24:33.689 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:24:33.690 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:24:33.690 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:24:33.690 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:24:33.701 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:24:33.702 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:24:33.702 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T20:24:33.702 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:24:33.702 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:24:33.771 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:24:34.772 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T20:24:34.772 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T20:24:34.772 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T20:24:34.772 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T20:24:34.786 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:24:35.787 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:24:35.839 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:24:36.840 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:24:36.842 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 24.33
2026-01-21T20:24:36.842 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:23:36
2026-01-21T20:24:36.842 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:23:36
2026-01-21T20:24:36.842 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T20:24:36.842 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08973692913385825
2026-01-21T20:24:36.846 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T20:24:36.846 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:24:36.846 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:24:37.899 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:24:39.902 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='02:12:10.21', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-30:19:47.45', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='slit_flat', comment='The object name')]
2026-01-21T20:24:39.902 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:24:39.902 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:24:39.903 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:24:39.903 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:24:39.904 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 2 exposures
2026-01-21T20:24:39.904 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:24:39.906 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:24:40.044 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 2 exposures
2026-01-21T20:24:40.044 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 2
2026-01-21T20:24:40.046 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019880.0466065
2026-01-21T20:24:40.121 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:24:40.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:24:40.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:24:40.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:40.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:40.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:40.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:43.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:43.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:43.931 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:43.931 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:45.496 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:46.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:46.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:46.956 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:46.956 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:47.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:49.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:49.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:49.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:49.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:49.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:50.129 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:24:51.700 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:52.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:52.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:52.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:52.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:53.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:55.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:55.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:55.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:55.985 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:55.986 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:57.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:24:58.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:24:59.008 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:24:59.008 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:24:59.008 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:24:59.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:00.139 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:25:00.160 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:24:29.621516
2026-01-21T20:25:00.160 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:24:29.621516
2026-01-21T20:25:00.160 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:25:00.160 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:25:00.160 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:25:00.160 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:25:00&start_after=2026-01-20T18:25:00&end_after=2026-01-21T18:25:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:25:00.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:00.275 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:00.276 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.279 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.280 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:00.281 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:00.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.285 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:00.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:00.288 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.290 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:00.291 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:25:00.291 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:25:00.291 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:25:00.291 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:25:00.291 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1220.708601
2026-01-21T20:25:00.291 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T20:25:02.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:02.011 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:02.011 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:02.011 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:02.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:04.108 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:05.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:05.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000331966. Last known sky angle: 0.0
2026-01-21T20:25:05.035 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:05.035 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000331966
2026-01-21T20:25:06.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:08.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:08.038 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000331966
2026-01-21T20:25:08.038 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:08.038 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:08.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:08.348 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 2 done. Exposure state = 0
2026-01-21T20:25:08.348 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:25:08.350 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:25:08.471 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 2
2026-01-21T20:25:08.473 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769019908.473308
2026-01-21T20:25:09.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:25:10.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 3.227/5.0
2026-01-21T20:25:11.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:11.062 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:11.062 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:11.062 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:12.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 1.16/5.0
2026-01-21T20:25:14.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:14.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:14.066 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:14.066 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:14.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:16.516 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:17.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:17.087 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:17.087 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:17.087 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:18.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:19.310 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:25:20.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:20.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:20.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:20.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:20.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:22.720 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:23.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:23.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:23.112 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:23.112 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:24.788 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:26.115 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:26.116 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:26.116 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:26.116 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:26.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:28.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:29.119 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:29.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:29.135 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:29.135 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:29.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:25:30.993 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:32.139 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:32.139 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:32.140 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:32.140 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:33.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:35.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/2, Remaining exp time 0.0/5.0
2026-01-21T20:25:35.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:25:35.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:25:35.157 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:25:35.157 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:25:35.762 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 2 done. Exposure state = 0
2026-01-21T20:25:35.762 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:25:35.764 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:25:38.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:25:38.161 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 1
2026-01-21T20:25:38.161 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:25:38.161 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:25:38.248 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:25:38.248 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json was run successfully
2026-01-21T20:25:38.248 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17503455 COMPLETED 13543 reason
2026-01-21T20:25:38.248 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17503455 COMPLETED 13543 reason
2026-01-21T20:25:38.248 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:25:38.248 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:25:38.248 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:25:38.248 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:25:38.248 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:25:38.248 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:25:39.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:25:41.249 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:25:41.249 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:25:43.251 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:25:43.251 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:25:43.251 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T20:25:43.251 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T20:25:43.251 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T20:25:43.253 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T20:25:43.253 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T18:27:10Z
2026-01-21T20:25:43.253 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T20:25:43.253 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T20:25:43.253 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T20:25:43.253 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T20:25:43.253 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T20:25:43.253 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:25:43.253 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:25:43.754 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:25:43.754 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T20:25:43.754 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:25:43.754 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:25:43.754 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:25:43.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:25:43.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:25:43.754 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:25:43.754 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T20:25:43.776 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 02:13:20.9568   Targ dec = -30:12:43.8876
2026-01-21T20:25:43.776 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:25:43.776 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:25:43.776 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:25:43.783 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:25:43.783 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:25:43.783 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:25:43.783 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:25:44.829 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:25:46.832 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:25:46.832 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:25:46.832 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:25:47.257 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:25:47.257 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T20:25:47.257 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T20:25:47.257 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T20:25:47.257 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T20:25:47.257 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17503455
2026-01-21T20:25:47.257 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T20:25:47.257 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T20:25:47.257 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T18:24:03', 'end': '2026-01-21T18:25:47', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '104.0', 'events': {}}} with config status ID 17503455
2026-01-21T20:25:47.368 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:25:47.368 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:18:50Z', 'guide_off', 'config_id 13543', 'config_status_id 17503455', 'update_OCS 17503455 ATTEMPTED', 'run_script setup_1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'run_script 1x1HighSlowAuto_slit_flats_17224702_13497_13543.json', 'update_OCS 17503455 COMPLETED 13543 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:27:10Z', 'run_script arc_flat_lamp_off.json'] at time 20:25:47
2026-01-21T20:25:49.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:25:59.349 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:25:59.371 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:25:33.651424
2026-01-21T20:25:59.371 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:25:33.651424
2026-01-21T20:25:59.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:25:59.371 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:25:59.371 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:25:59.371 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:25:59&start_after=2026-01-20T18:25:59&end_after=2026-01-21T18:25:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:25:59.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:59.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:59.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.505 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:59.508 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:59.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.511 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.512 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:59.513 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:25:59.515 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.516 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.517 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1161.481717
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:25:59.518314    Obs time: 2026-01-21 18:45:21
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:21.481686
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1161
2026-01-21T20:25:59.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:26:08.526 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:26:18.537 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:26:28.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:26:38.558 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:26:48.568 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:26:58.579 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:26:58.580 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:26:40.519219
2026-01-21T20:26:58.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:26:40.519219
2026-01-21T20:26:58.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:26:58.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:26:58.580 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:26:58.580 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:26:58&start_after=2026-01-20T18:26:58&end_after=2026-01-21T18:26:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:26:58.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:26:58.694 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:26:58.694 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.695 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.697 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.698 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:26:58.699 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:26:58.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.702 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.703 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:26:58.704 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:26:58.706 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.707 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:26:58.708 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:26:58.708 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:26:58.708 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:26:58.708 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:26:58.708 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1102.291035
2026-01-21T20:26:58.709 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:26:58.708997    Obs time: 2026-01-21 18:45:21
2026-01-21T20:26:58.709 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:22.291003
2026-01-21T20:26:58.709 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1102
2026-01-21T20:26:58.709 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:27:07.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:27:17.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:27:27.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:27:37.750 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:27:47.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:27:57.770 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:27:57.771 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:27:44.554519
2026-01-21T20:27:57.771 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:27:44.554519
2026-01-21T20:27:57.771 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:27:57.771 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:27:57.771 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:27:57.771 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:27:57&start_after=2026-01-20T18:27:57&end_after=2026-01-21T18:27:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:27:57.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:27:57.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:27:57.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:27:57.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:27:57.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.909 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:27:57.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:27:57.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.915 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1043.082664
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:27:57.917367    Obs time: 2026-01-21 18:45:21
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:23.082633
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1043
2026-01-21T20:27:57.917 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:28:06.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:28:16.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:28:26.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:28:36.958 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:28:46.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:28:56.979 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:28:56.979 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:28:48.563179
2026-01-21T20:28:56.979 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:28:48.563179
2026-01-21T20:28:56.980 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:28:56.980 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:28:56.980 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:28:56.980 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:28:56&start_after=2026-01-20T18:28:56&end_after=2026-01-21T18:28:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:28:57.105 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:28:57.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:28:57.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:28:57.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:28:57.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:28:57.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:28:57.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:28:57.121 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:28:57.121 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:28:57.121 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:28:57.121 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:28:57.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 983.877996
2026-01-21T20:28:57.122 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:28:57.122038    Obs time: 2026-01-21 18:45:21
2026-01-21T20:28:57.122 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:23.877962
2026-01-21T20:28:57.122 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  983
2026-01-21T20:28:57.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:29:06.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:29:16.141 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:29:26.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:29:36.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:29:46.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:29:56.181 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:29:56.201 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:29:52.455362
2026-01-21T20:29:56.201 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:29:52.455362
2026-01-21T20:29:56.201 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:29:56.201 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:29:56.201 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:29:56.201 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:29:56&start_after=2026-01-20T18:29:56&end_after=2026-01-21T18:29:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:29:56.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:29:56.316 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:29:56.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:29:56.322 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:29:56.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:29:56.327 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:29:56.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 924.668208
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:29:56.331824    Obs time: 2026-01-21 18:45:21
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:24.668176
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  924
2026-01-21T20:29:56.331 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:30:05.341 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:30:15.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:30:25.361 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:30:35.371 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:30:45.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:30:55.392 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:30:55.393 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:29:52.455362
2026-01-21T20:30:55.393 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:29:52.455362
2026-01-21T20:30:55.393 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:30:55.393 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:30:55.393 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:30:55.393 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:30:55&start_after=2026-01-20T18:30:55&end_after=2026-01-21T18:30:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:30:55.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:30:55.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:30:55.508 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.509 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.511 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.511 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:30:55.513 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:30:55.514 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.515 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.515 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.516 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:30:55.518 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:30:55.519 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.521 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 865.477368
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:30:55.522664    Obs time: 2026-01-21 18:45:21
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:25.477336
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  865
2026-01-21T20:30:55.522 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:31:04.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:31:14.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:31:24.552 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:31:34.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:31:44.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:31:54.583 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:31:54.584 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:30:56.771743
2026-01-21T20:31:54.584 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:30:56.771743
2026-01-21T20:31:54.584 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:31:54.584 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:31:54.585 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:31:54.585 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:31:54&start_after=2026-01-20T18:31:54&end_after=2026-01-21T18:31:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:31:54.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:31:54.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:31:54.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.718 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:31:54.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:31:54.721 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.723 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:31:54.724 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:31:54.726 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.727 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.728 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 806.270735
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:31:54.729296    Obs time: 2026-01-21 18:45:21
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:26.270704
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  806
2026-01-21T20:31:54.729 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:32:03.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:32:13.749 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:32:23.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:32:33.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:32:43.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:32:53.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:32:53.808 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:32:00.813311
2026-01-21T20:32:53.808 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:32:00.813311
2026-01-21T20:32:53.808 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:32:53.808 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:32:53.809 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:32:53.809 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:32:53&start_after=2026-01-20T18:32:53&end_after=2026-01-21T18:32:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:32:53.923 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:32:53.925 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:32:53.925 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.926 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.929 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:32:53.930 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:32:53.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.933 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:32:53.935 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:32:53.937 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.939 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:32:53.939 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:32:53.939 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:32:53.939 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:32:53.939 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:32:53.939 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 747.060018
2026-01-21T20:32:53.940 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:32:53.940014    Obs time: 2026-01-21 18:45:21
2026-01-21T20:32:53.940 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:27.059986
2026-01-21T20:32:53.940 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  747
2026-01-21T20:32:53.940 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:33:02.949 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:33:12.960 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:33:22.970 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:33:32.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:33:42.991 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:33:53.002 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:33:53.002 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:33:05.120492
2026-01-21T20:33:53.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:33:05.120492
2026-01-21T20:33:53.003 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:33:53.003 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:33:53.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:33:53.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:33:53&start_after=2026-01-20T18:33:53&end_after=2026-01-21T18:33:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:33:53.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:33:53.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:33:53.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.125 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:33:53.127 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:33:53.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.130 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.130 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:33:53.132 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:33:53.133 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 687.863199
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:33:53.136834    Obs time: 2026-01-21 18:45:21
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:27.863166
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  687
2026-01-21T20:33:53.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:34:02.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:34:12.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:34:22.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:34:32.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:34:42.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:34:52.195 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:34:52.214 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:34:13.787761
2026-01-21T20:34:52.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:34:13.787761
2026-01-21T20:34:52.214 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:34:52.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:34:52.214 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:34:52.215 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:34:52&start_after=2026-01-20T18:34:52&end_after=2026-01-21T18:34:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:34:52.342 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:34:52.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:34:52.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:34:52.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:34:52.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.356 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:34:52.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:34:52.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 628.635533
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:34:52.364498    Obs time: 2026-01-21 18:45:21
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:28.635502
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  628
2026-01-21T20:34:52.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:35:01.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:35:11.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:35:21.393 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:35:31.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:35:41.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:35:51.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:35:51.442 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:35:22.578515
2026-01-21T20:35:51.442 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:35:22.578515
2026-01-21T20:35:51.443 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:35:51.443 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:35:51.443 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:35:51.443 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:35:51&start_after=2026-01-20T18:35:51&end_after=2026-01-21T18:35:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:35:51.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:35:51.555 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:35:51.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:35:51.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:35:51.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:35:51.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:35:51.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:35:51.570 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:35:51.570 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:35:51.570 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:35:51.570 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:35:51.570 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 569.42951
2026-01-21T20:35:51.571 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:35:53.573 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:35:53.574 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:35:53.582 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:35:53.582550    Obs time: 2026-01-21 18:45:21
2026-01-21T20:35:53.582 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:27.417450
2026-01-21T20:35:53.582 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  567
2026-01-21T20:35:53.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:36:00.590 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:36:10.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:36:20.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:36:30.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:36:40.632 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:36:50.642 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:36:50.661 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:36:22.778106
2026-01-21T20:36:50.661 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:36:22.778106
2026-01-21T20:36:50.661 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:36:50.661 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:36:50.661 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:36:50.661 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:36:50&start_after=2026-01-20T18:36:50&end_after=2026-01-21T18:36:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:36:50.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:36:50.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:36:50.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:36:50.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:36:50.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:36:50.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:36:50.789 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:36:50.792 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:36:50.792 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:36:50.792 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:36:50.792 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:36:50.792 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 510.20712
2026-01-21T20:36:50.793 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:36:52.794 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:36:52.813 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:36:52.813 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:36:52.813167    Obs time: 2026-01-21 18:45:21
2026-01-21T20:36:52.813 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:28.186833
2026-01-21T20:36:52.813 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  508
2026-01-21T20:36:52.813 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:36:59.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:37:09.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:37:19.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:37:29.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:37:39.863 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:37:49.874 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:37:49.874 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:37:22.975847
2026-01-21T20:37:49.874 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:37:22.975847
2026-01-21T20:37:49.874 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:37:49.874 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:37:49.875 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:37:49.875 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:37:49&start_after=2026-01-20T18:37:49&end_after=2026-01-21T18:37:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:37:49.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:37:49.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:37:49.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:49.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:49.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:49.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.000 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:37:50.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:37:50.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.005 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:37:50.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:37:50.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:37:50.010 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:37:50.010 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:37:50.010 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:37:50.010 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:37:50.010 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 450.989034
2026-01-21T20:37:50.011 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:37:52.013 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:37:52.014 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:37:52.014 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:37:52.014796    Obs time: 2026-01-21 18:45:21
2026-01-21T20:37:52.014 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:28.985204
2026-01-21T20:37:52.014 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  448
2026-01-21T20:37:52.014 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:37:59.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:38:09.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:38:19.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:38:29.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:38:39.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:38:49.073 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:38:49.095 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:38:23.177949
2026-01-21T20:38:49.095 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:38:23.177949
2026-01-21T20:38:49.095 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:38:49.095 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:38:49.095 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:38:49.095 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:38:49&start_after=2026-01-20T18:38:49&end_after=2026-01-21T18:38:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:38:49.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:38:49.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:38:49.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.215 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:38:49.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:38:49.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:38:49.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:38:49.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:38:49.225 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:38:49.226 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:38:49.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:38:49.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:38:49.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 391.773831
2026-01-21T20:38:49.226 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:38:51.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:38:51.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:38:51.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:38:51.248736    Obs time: 2026-01-21 18:45:21
2026-01-21T20:38:51.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:29.751264
2026-01-21T20:38:51.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  389
2026-01-21T20:38:51.248 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:38:58.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:39:08.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:39:18.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:39:28.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:39:38.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:39:48.308 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:39:48.309 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:39:23.377245
2026-01-21T20:39:48.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:39:23.377245
2026-01-21T20:39:48.309 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:39:48.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:39:48.309 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:39:48.309 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:39:48&start_after=2026-01-20T18:39:48&end_after=2026-01-21T18:39:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:39:48.425 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:39:48.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:39:48.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.429 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:39:48.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:39:48.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:39:48.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:39:48.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:39:48.441 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:39:48.441 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:39:48.441 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:39:48.441 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:39:48.441 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 332.558088
2026-01-21T20:39:48.442 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:39:50.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:39:50.445 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:39:50.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:39:50.445717    Obs time: 2026-01-21 18:45:21
2026-01-21T20:39:50.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:30.554283
2026-01-21T20:39:50.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  330
2026-01-21T20:39:50.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:39:57.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:40:07.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:40:17.474 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:40:27.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:40:37.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:40:47.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:40:47.505 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:40:23.576768
2026-01-21T20:40:47.505 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:40:23.576768
2026-01-21T20:40:47.505 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:40:47.505 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:40:47.505 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:40:47.505 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:40:47&start_after=2026-01-20T18:40:47&end_after=2026-01-21T18:40:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:40:47.743 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:40:47.744 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:40:47.745 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:40:47.746 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:40:47.747 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:40:47.748 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:40:47.750 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:40:47.750 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:40:47.752 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:40:47.753 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:40:47.753 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-21T20:40:47.753 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:40:47.753 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:40:47.753 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 273.246068
2026-01-21T20:40:47.772 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:40:49.774 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:40:49.793 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:40:49.793 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:40:49.793783    Obs time: 2026-01-21 18:45:21
2026-01-21T20:40:49.793 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:31.206217
2026-01-21T20:40:49.793 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  271
2026-01-21T20:40:49.793 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:40:56.801 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:41:06.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:41:16.820 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:41:26.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:41:36.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:41:46.861 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:41:46.880 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:41:23.778152
2026-01-21T20:41:46.881 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:41:23.778152
2026-01-21T20:41:46.881 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:41:46.881 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:41:46.882 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:41:46.882 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:41:46&start_after=2026-01-20T18:41:46&end_after=2026-01-21T18:41:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:41:47.000 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:41:47.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:41:47.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.010 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:41:47.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:41:47.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.067 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:41:47.073 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:41:47.079 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.085 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:41:47.087 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:41:47.087 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:41:47.087 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:41:47.087 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:41:47.087 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 213.912507
2026-01-21T20:41:47.088 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:41:49.091 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:41:49.093 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:41:49.094 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:41:49.094183    Obs time: 2026-01-21 18:45:21
2026-01-21T20:41:49.094 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:31.905817
2026-01-21T20:41:49.094 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  211
2026-01-21T20:41:49.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:41:56.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:42:06.118 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:42:16.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:42:26.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:42:36.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:42:46.168 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:42:46.168 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:42:23.979129
2026-01-21T20:42:46.168 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:42:23.979129
2026-01-21T20:42:46.168 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:42:46.169 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:42:46.169 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:42:46.169 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:42:46&start_after=2026-01-20T18:42:46&end_after=2026-01-21T18:42:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:42:46.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:42:46.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:42:46.305 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.306 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:42:46.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:42:46.311 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.312 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:42:46.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:42:46.316 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:42:46.319 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:42:46.319 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:42:46.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:42:46.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:42:46.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 154.680249
2026-01-21T20:42:46.320 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:42:48.322 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:42:48.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:42:48.341 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:42:48.341187    Obs time: 2026-01-21 18:45:21
2026-01-21T20:42:48.341 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:32.658813
2026-01-21T20:42:48.341 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  152
2026-01-21T20:42:48.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:42:55.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:43:05.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:43:15.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:43:25.378 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:43:35.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:43:45.398 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:43:45.418 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:43:24.176157
2026-01-21T20:43:45.418 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:43:24.176157
2026-01-21T20:43:45.418 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:43:45.418 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:43:45.418 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:43:45.418 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:43:45&start_after=2026-01-20T18:43:45&end_after=2026-01-21T18:43:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:43:45.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:43:45.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:43:45.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.555 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:43:45.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:43:45.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:43:45.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:43:45.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:43:45.566 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:43:45.566 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:43:45.566 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:43:45.566 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:43:45.566 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 95.433765
2026-01-21T20:43:45.566 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:43:47.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:43:47.591 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:43:47.591 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:43:47.591557    Obs time: 2026-01-21 18:45:21
2026-01-21T20:43:47.591 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:33.408443
2026-01-21T20:43:47.591 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  93
2026-01-21T20:43:47.591 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:43:54.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:44:04.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:44:14.619 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:44:24.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:44:34.640 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:44:44.650 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:44:44.651 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:44:24.376670
2026-01-21T20:44:44.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:44:24.376670
2026-01-21T20:44:44.651 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:44:44.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:44:44.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:44:44.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:44:44&start_after=2026-01-20T18:44:44&end_after=2026-01-21T18:44:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:44:44.766 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:44:44.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:44:44.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:44:44.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:44:44.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:44:44.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:44:44.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:44:44.782 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:44:44.782 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:44:44.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:44:44.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:44:44.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 36.217021
2026-01-21T20:44:44.783 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:44:46.785 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:44:46.786 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:44:46.786 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:44:46.786885    Obs time: 2026-01-21 18:45:21
2026-01-21T20:44:46.786 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:34.213115
2026-01-21T20:44:46.786 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  34
2026-01-21T20:44:46.786 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:44:53.794 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:45:03.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:45:13.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:45:23.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:45:33.835 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:45:43.845 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:45:43.864 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:45:24.580633
2026-01-21T20:45:43.864 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:45:24.580633
2026-01-21T20:45:43.864 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:45:43.864 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:45:43.864 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:45:43.864 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:45:43&start_after=2026-01-20T18:45:43&end_after=2026-01-21T18:45:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:45:44.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.037 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:45:44.042 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:45:44.043 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:45:44.043 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T20:45:44.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:45:44.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:45:21Z
2026-01-21T20:45:44.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -23.043844
2026-01-21T20:45:44.044 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:45:46.046 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:45:46.064 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:45:46.064 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:45:46.064486    Obs time: 2026-01-21 18:45:21
2026-01-21T20:45:46.064 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:34.935514
2026-01-21T20:45:46.064 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86374
2026-01-21T20:45:46.064 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:45:21Z', 'guide_off', 'config_id 13481', 'config_status_id 17508032', 'update_OCS 17508032 ATTEMPTED', 'run_script setup_AT2026ob_phot_17229279_13435_13481.json', 'run_script AT2026ob_phot_17229279_13435_13481.json', 'update_OCS 17508032 COMPLETED 13481 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:58:44Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:45:46.064 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T20:45:46.064 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T20:45:46.064 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T20:45:46.064 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:45:46.064 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T20:45:46.065 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T20:45:46.065 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T20:45:46.065 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T20:45:46.065 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T20:45:46.065 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T20:45:46.065 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:45:46.065 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:45:46.065 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:45:46.065 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:45:46.065 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:45:46.066 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:45:49.069 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:45:49.069 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:45:51.071 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:45:51.071 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:45:51.071 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T18:45:21Z
2026-01-21T20:45:51.071 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T18:45:21Z
2026-01-21T20:45:51.071 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:45:51.071 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:45:51.071 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:45:51.071 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:45:51.071 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:45:51.071 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:45:53.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:45:54.074 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:45:54.074 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:45:56.076 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:45:56.076 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:45:56.076 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13481
2026-01-21T20:45:56.076 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13481
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17508032
2026-01-21T20:45:56.077 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17508032
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508032 ATTEMPTED
2026-01-21T20:45:56.077 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508032 ATTEMPTED
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:45:56.077 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:45:56.077 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:45:56.077 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 0.505501, 'targ_dec': -33.250264, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '00:30:19.80', 'targ_dec': '-33:15:00.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_AT2026ob_phot_17229279_13435_13481.json'}
2026-01-21T20:45:56.077 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:45:56.077 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508032
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T20:45:56.077 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17508032
2026-01-21T20:45:56.177 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:45:56.577 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:45:56.578 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_AT2026ob_phot_17229279_13435_13481.json 1 times
2026-01-21T20:45:56.578 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:45:56.579 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T20:45:56.579 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T20:45:56.579 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T20:45:59.606 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:46:00.626 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:46:01.649 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:46:02.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:46:03.082 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:46:03.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:04.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:05.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:06.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:07.767 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:08.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:09.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T20:46:10.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T20:46:10.835 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  0.505562358306971 is close enough to target ra = 0.505501
2026-01-21T20:46:10.835 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -33.2531059211542 is close enough to target dec = -33.250264
2026-01-21T20:46:10.835 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T20:46:10.835 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:46:10.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:46:10.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:46:10.835 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:46:10.835 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T20:46:10.835 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T20:46:10.847 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:46:10.847 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:46:10.911 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:46:11.912 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T20:46:11.912 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T20:46:11.926 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:46:12.928 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:46:12.979 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:46:13.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:46:13.980 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:46:13.982 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.77
2026-01-21T20:46:13.982 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:45:33
2026-01-21T20:46:13.982 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:45:33
2026-01-21T20:46:13.982 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T20:46:13.982 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09007645669291336
2026-01-21T20:46:13.985 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T20:46:13.985 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T20:46:13.985 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T20:46:13.994 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T20:46:13.994 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:46:14.032 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:46:15.033 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T20:46:15.033 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T20:46:15.048 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T20:46:16.049 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T20:46:16.101 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T20:46:17.102 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:46:17.104 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.77
2026-01-21T20:46:17.104 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:45:33
2026-01-21T20:46:17.104 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:45:33
2026-01-21T20:46:17.104 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T20:46:17.104 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09007645669291336
2026-01-21T20:46:22.146 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T20:46:22.146 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T20:46:22.146 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:46:22.146 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:46:22.146 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:46:22.146 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:46:22.148 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:46:22.148 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:46:22.168 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:46:22.298 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:46:22.298 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:46:22.300 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021182.3005373
2026-01-21T20:46:23.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:46:28.562 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:46:28.563 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:46:28.585 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:46:28.657 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T20:46:32.661 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T20:46:32.661 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T20:46:33.112 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:46:42.728 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T20:46:42.728 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T20:46:42.728 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 00:30:19.80 = 27297.0 arcseconds
2026-01-21T20:46:42.728 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -33:15:00.95 = -119700.95 arcseconds
2026-01-21T20:46:42.728 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T20:46:42.748 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T20:46:42.748 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.381
2026-01-21T20:46:42.748 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T20:46:42.748 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (00:30:20.272, -33:15:19.466).
2026-01-21T20:46:42.748 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  00 30 20.272  -33 15 19.466 .
2026-01-21T20:46:42.748 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 00 30 20.272  -33 15 19.466 .
2026-01-21T20:46:42.748 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 27304.079999999998
2026-01-21T20:46:42.748 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -119719.466
2026-01-21T20:46:42.959 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T20:46:43.121 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:46:43.140 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:46:24.780182
2026-01-21T20:46:43.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:46:24.780182
2026-01-21T20:46:43.141 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:46:43.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:46:43.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:46:43.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:46:43&start_after=2026-01-20T18:46:43&end_after=2026-01-21T18:46:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:46:43.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:46:43.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.255 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.256 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.258 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:46:43.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:46:43.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.305 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.306 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:46:43.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:46:43.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.311 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.312 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:46:43.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:00:00Z
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 796.685099
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:46:43.314933    Obs time: 2026-01-21 19:00:00
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:16.685067
2026-01-21T20:46:43.314 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  796
2026-01-21T20:46:43.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:46:47.980 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T20:46:47.980 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T20:46:47.980 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:46:47.981 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:46:47.981 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:46:47.981 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:46:47.983 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:46:47.983 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:46:47.984 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:46:48.130 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:46:48.131 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:46:48.132 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021208.132773
2026-01-21T20:46:49.482 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T20:46:52.324 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:46:52.392 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:46:52.393 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:46:52.415 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:46:52.489 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T20:46:56.491 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T20:46:56.512 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T20:46:56.512 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T20:46:56.512 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 00:30:19.80 = 27297.0 arcseconds
2026-01-21T20:46:56.513 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -33:15:00.95 = -119700.95 arcseconds
2026-01-21T20:46:56.513 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T20:46:56.533 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T20:46:56.533 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.434
2026-01-21T20:46:56.533 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T20:46:56.533 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (00:30:19.790, -33:15:00.845).
2026-01-21T20:46:56.533 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  00 30 19.790  -33 15 00.845 .
2026-01-21T20:46:56.533 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 00 30 19.790  -33 15 00.845 .
2026-01-21T20:46:56.533 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 27296.85
2026-01-21T20:46:56.533 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -119700.845
2026-01-21T20:46:56.745 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T20:47:01.769 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T20:47:01.769 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T20:47:01.769 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:47:01.769 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:47:01.769 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:47:01.769 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:47:01.771 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:47:01.771 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:47:01.773 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:47:01.893 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:47:01.893 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:47:01.894 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021221.8947706
2026-01-21T20:47:02.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:47:03.271 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T20:47:06.154 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:47:06.154 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:47:06.156 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:47:06.277 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T20:47:12.305 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T20:47:12.305 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:47:12.305 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:47:12.305 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:47:12.306 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:47:12.307 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:47:12.307 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:47:12.309 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:47:12.344 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:47:12.459 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:47:12.459 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:47:12.460 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021232.460961
2026-01-21T20:47:13.807 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T20:47:16.719 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:47:16.719 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:47:16.735 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:47:16.814 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T20:47:22.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:47:24.622 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  4477  8134  12.9 to host 127.0.0.1 on port 12360
2026-01-21T20:47:24.622 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:47:24.623 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:47:27.626 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  4477  8134  12.9
2026-01-21T20:47:27.626 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  4477  8134  12.9
2026-01-21T20:47:29.628 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:47:32.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:47:42.419 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:47:42.440 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:47:24.983372
2026-01-21T20:47:42.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:47:24.983372
2026-01-21T20:47:42.440 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:47:42.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:47:42.440 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:47:42.440 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:47:42&start_after=2026-01-20T18:47:42&end_after=2026-01-21T18:47:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:47:42.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:47:42.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:47:42.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:47:42.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:47:42.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:47:42.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:47:42.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:00:00Z
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 737.41941
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:47:42.580622    Obs time: 2026-01-21 19:00:00
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:17.419378
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  737
2026-01-21T20:47:42.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:47:51.590 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:48:01.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:48:08.667 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T20:48:08.667 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:48:08.667 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:48:11.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:48:11.670 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T20:48:11.670 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T20:48:13.672 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:48:13.672 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:48:13.673 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:48:13.673 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:48:13.673 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:48:13.673 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:48:13.673 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:48:13.673 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:48:14.724 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:48:16.726 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:48:16.726 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:48:16.726 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:48:17.358 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:48:17.378 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_AT2026ob_phot_17229279_13435_13481.json was run successfully
2026-01-21T20:48:17.378 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:48:17.379 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:48:17.379 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:48:17.379 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script AT2026ob_phot_17229279_13435_13481.json
2026-01-21T20:48:17.379 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'AT2026ob', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '00:30:19.80', 'targ_dec': '-33:15:00.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 120000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'AT2026ob', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '00:30:19.80', 'targ_dec': '-33:15:00.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'AT2026ob', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '00:30:19.80', 'targ_dec': '-33:15:00.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'AT2026ob', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '00:30:19.80', 'targ_dec': '-33:15:00.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}], 'script_name': 'AT2026ob_phot_17229279_13435_13481.json'}
2026-01-21T20:48:17.379 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:48:17.379 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:48:17.880 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:48:17.880 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script AT2026ob_phot_17229279_13435_13481.json 1 times
2026-01-21T20:48:17.880 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 4: 1
2026-01-21T20:48:17.880 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:48:17.880 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:48:17.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:48:17.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:48:17.880 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:48:17.880 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:48:17.880 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:48:17.880 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:48:17.890 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:48:17.891 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:48:17.891 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T20:48:17.891 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T20:48:17.891 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T20:48:18.091 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T20:48:19.111 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T20:48:20.132 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T20:48:21.152 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T20:48:21.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:48:22.205 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T20:48:23.206 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:48:23.258 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T20:48:24.259 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:48:24.260 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.74
2026-01-21T20:48:24.261 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:47:41
2026-01-21T20:48:24.261 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:47:41
2026-01-21T20:48:24.261 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T20:48:24.261 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08804740157480313
2026-01-21T20:48:24.264 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T20:48:24.264 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:48:24.264 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:48:24.264 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:48:24.310 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T20:48:25.312 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:48:25.312 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:48:25.312 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:48:26.355 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:48:28.373 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='00:30:19.80', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-33:15:00.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2026ob', comment='The object name')]
2026-01-21T20:48:28.374 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:48:28.422 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:48:28.422 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:48:28.422 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:48:28.424 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:48:28.424 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:48:28.426 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:48:28.531 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:48:28.531 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:48:28.532 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021308.5328043
2026-01-21T20:48:28.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:48:28.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:48:29.424 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:29.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:29.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:29.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:31.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:48:32.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:32.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:32.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:32.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:34.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.585/120.0
2026-01-21T20:48:35.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:35.471 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:35.471 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:35.471 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:36.049 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.529/120.0
2026-01-21T20:48:38.088 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.484/120.0
2026-01-21T20:48:38.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:38.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:38.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:38.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:40.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.446/120.0
2026-01-21T20:48:41.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:41.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:41.499 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:41.499 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:41.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:48:41.641 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:48:25.204285
2026-01-21T20:48:41.641 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:48:25.204285
2026-01-21T20:48:41.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:48:41.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:48:41.642 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:48:41.642 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:48:41&start_after=2026-01-20T18:48:41&end_after=2026-01-21T18:48:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:48:41.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:48:41.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:48:41.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:48:41.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:48:41.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:48:41.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:48:41.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:00:00Z
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 678.210275
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:48:41.789756    Obs time: 2026-01-21 19:00:00
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:18.210244
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  678
2026-01-21T20:48:41.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:48:42.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.422/120.0
2026-01-21T20:48:44.173 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.384/120.0
2026-01-21T20:48:44.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:44.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:44.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:44.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:46.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.362/120.0
2026-01-21T20:48:47.502 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:47.503 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:47.503 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:47.503 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:48.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.332/120.0
2026-01-21T20:48:50.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.271/120.0
2026-01-21T20:48:50.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:50.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:50.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:50.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:50.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:48:52.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.232/120.0
2026-01-21T20:48:53.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:53.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:48:53.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:53.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:48:54.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.173/120.0
2026-01-21T20:48:56.424 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 92.134/120.0
2026-01-21T20:48:56.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:56.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T20:48:56.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:56.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T20:48:58.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.11/120.0
2026-01-21T20:48:59.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:48:59.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T20:48:59.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:48:59.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:00.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.066/120.0
2026-01-21T20:49:00.807 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:49:02.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:02.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:02.554 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:02.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:02.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.02/120.0
2026-01-21T20:49:04.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.944/120.0
2026-01-21T20:49:05.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:05.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:05.576 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:05.576 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:06.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.899/120.0
2026-01-21T20:49:08.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:08.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:08.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:08.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:08.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.876/120.0
2026-01-21T20:49:10.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.816/120.0
2026-01-21T20:49:10.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:49:11.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:11.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:11.607 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:11.607 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:12.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.778/120.0
2026-01-21T20:49:14.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:14.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:14.611 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:14.611 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:14.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.738/120.0
2026-01-21T20:49:16.890 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.715/120.0
2026-01-21T20:49:17.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:17.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:17.632 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:17.632 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:18.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.643/120.0
2026-01-21T20:49:20.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:20.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:20.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:20.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:20.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:49:21.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 67.54/120.0
2026-01-21T20:49:23.152 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.43/120.0
2026-01-21T20:49:23.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:23.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:23.660 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:23.660 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:25.197 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.381/120.0
2026-01-21T20:49:26.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:26.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:26.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:26.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:27.306 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.336/120.0
2026-01-21T20:49:29.329 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.227/120.0
2026-01-21T20:49:29.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:29.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:29.682 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:29.682 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:30.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:49:31.368 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.204/120.0
2026-01-21T20:49:32.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:32.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:32.701 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:32.701 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:33.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.166/120.0
2026-01-21T20:49:35.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 53.094/120.0
2026-01-21T20:49:35.704 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:35.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:35.705 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:35.705 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:37.534 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 51.07/120.0
2026-01-21T20:49:38.708 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:38.726 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:38.726 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:38.726 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:39.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.999/120.0
2026-01-21T20:49:40.845 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:49:40.866 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:49:25.406954
2026-01-21T20:49:40.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:49:25.406954
2026-01-21T20:49:40.866 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:49:40.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:49:40.866 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:49:40.866 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:49:40&start_after=2026-01-20T18:49:40&end_after=2026-01-21T18:49:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:49:40.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:49:40.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.986 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:49:40.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:49:40.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:49:40.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:49:40.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:49:40.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:49:41.000 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:49:41.000 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:49:41.000 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:49:41.000 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:49:41.000 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 542.999731
2026-01-21T20:49:41.001 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:49:41.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.928/120.0
2026-01-21T20:49:41.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:41.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:41.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:41.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:43.003 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:49:43.018 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:49:43.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:49:43.018332    Obs time: 2026-01-21 18:58:44
2026-01-21T20:49:43.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:00.981668
2026-01-21T20:49:43.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  540
2026-01-21T20:49:43.018 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:49:43.721 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.872/120.0
2026-01-21T20:49:44.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:44.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:44.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:44.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:45.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.812/120.0
2026-01-21T20:49:47.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:47.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:47.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:47.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:47.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.773/120.0
2026-01-21T20:49:49.887 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.712/120.0
2026-01-21T20:49:50.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:49:50.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:50.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:50.761 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:50.761 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:51.942 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.646/120.0
2026-01-21T20:49:53.764 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:53.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:53.783 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:53.783 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:53.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.591/120.0
2026-01-21T20:49:56.058 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.568/120.0
2026-01-21T20:49:56.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:56.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:56.787 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:56.787 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:49:58.124 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.475/120.0
2026-01-21T20:49:59.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:49:59.791 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:49:59.791 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:49:59.791 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:00.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:50:00.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.41/120.0
2026-01-21T20:50:02.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.367/120.0
2026-01-21T20:50:02.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:02.811 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:02.811 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:02.811 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:04.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.234/120.0
2026-01-21T20:50:05.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:05.836 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:05.836 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:05.836 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:06.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.195/120.0
2026-01-21T20:50:08.459 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.118/120.0
2026-01-21T20:50:08.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:08.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:08.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:08.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:10.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:50:10.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.074/120.0
2026-01-21T20:50:11.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:11.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:11.861 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:11.861 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:12.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.019/120.0
2026-01-21T20:50:14.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.969/120.0
2026-01-21T20:50:14.864 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:14.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:14.865 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:14.865 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:16.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.926/120.0
2026-01-21T20:50:17.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:17.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:17.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:17.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:18.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.885/120.0
2026-01-21T20:50:20.046 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:50:20.710 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.863/120.0
2026-01-21T20:50:20.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:20.892 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:20.892 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:20.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:22.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.824/120.0
2026-01-21T20:50:23.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:23.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:23.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:23.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:24.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.802/120.0
2026-01-21T20:50:26.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.778/120.0
2026-01-21T20:50:26.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:26.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:26.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:26.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:28.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:29.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:29.939 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T20:50:29.939 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:29.939 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T20:50:30.056 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:50:30.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:32.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:32.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T20:50:32.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:32.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:32.976 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:35.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:35.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:35.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:35.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:35.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:37.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:38.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:38.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:38.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:38.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:39.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:40.063 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:50:40.064 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:50:25.831774
2026-01-21T20:50:40.064 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:50:25.831774
2026-01-21T20:50:40.064 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:50:40.064 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:50:40.065 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:50:40.065 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:50:40&start_after=2026-01-20T18:50:40&end_after=2026-01-21T18:50:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:50:40.209 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:50:40.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.213 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:50:40.215 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:50:40.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:50:40.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:50:40.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:50:40.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:50:40.226 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:50:40.226 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:50:40.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:50:40.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:50:40.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 483.773172
2026-01-21T20:50:40.227 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:50:41.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:41.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:41.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:41.972 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:41.972 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:42.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:50:42.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:50:42.230 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:50:42.230735    Obs time: 2026-01-21 18:58:44
2026-01-21T20:50:42.230 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:01.769265
2026-01-21T20:50:42.230 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  481
2026-01-21T20:50:42.230 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:50:43.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:44.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:44.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:44.974 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:44.974 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:45.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:47.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:47.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:47.995 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:47.995 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:47.995 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:49.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:50:49.321 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:50.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:50:50.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:50:50.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:50:50.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:50:51.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/120.0
2026-01-21T20:50:52.264 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:50:52.264 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:50:52.285 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:50:54.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:50:54.001 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 4
2026-01-21T20:50:54.001 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 4: 2
2026-01-21T20:50:54.001 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:50:54.001 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:50:54.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:50:54.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:50:54.001 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:50:54.001 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:50:54.001 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:50:54.001 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:50:54.010 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:50:54.011 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:50:54.012 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T20:50:54.012 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T20:50:54.012 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T20:50:54.085 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T20:50:55.106 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T20:50:56.126 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T20:50:57.168 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T20:50:58.169 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:50:58.221 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T20:50:59.222 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:50:59.224 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.72
2026-01-21T20:50:59.224 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:50:22
2026-01-21T20:50:59.224 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:50:22
2026-01-21T20:50:59.224 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T20:50:59.224 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08815291338582674
2026-01-21T20:50:59.228 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T20:50:59.228 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:50:59.228 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:50:59.228 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:50:59.236 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T20:50:59.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:51:00.238 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:51:00.238 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:51:00.238 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:51:01.281 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:51:03.284 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='00:30:19.80', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-33:15:00.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2026ob', comment='The object name')]
2026-01-21T20:51:03.284 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:51:03.284 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:51:03.284 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:51:03.284 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:51:03.286 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:51:03.286 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:51:03.288 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:51:03.375 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:51:03.375 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:51:03.377 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021463.377396
2026-01-21T20:51:03.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:51:03.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:51:04.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:04.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T20:51:04.301 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:04.301 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:07.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:07.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:07.324 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:07.324 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:08.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.542/60.0
2026-01-21T20:51:09.252 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:51:10.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:10.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:10.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:10.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:10.910 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.507/60.0
2026-01-21T20:51:12.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.468/60.0
2026-01-21T20:51:13.347 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:13.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:13.348 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:13.348 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:14.993 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.425/60.0
2026-01-21T20:51:16.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:16.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:16.350 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:16.350 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:17.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.386/60.0
2026-01-21T20:51:19.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.345/60.0
2026-01-21T20:51:19.262 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:51:19.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:19.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:19.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:19.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:21.094 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.322/60.0
2026-01-21T20:51:22.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:22.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:22.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:22.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:23.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.283/60.0
2026-01-21T20:51:25.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.234/60.0
2026-01-21T20:51:25.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:25.402 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:25.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:25.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:27.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.195/60.0
2026-01-21T20:51:28.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:28.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:28.420 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:28.420 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:29.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:51:29.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.155/60.0
2026-01-21T20:51:31.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.106/60.0
2026-01-21T20:51:31.423 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:31.424 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:31.424 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:31.424 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:33.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.067/60.0
2026-01-21T20:51:34.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:34.428 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:34.428 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:34.428 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:35.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.028/60.0
2026-01-21T20:51:37.431 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:37.439 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.999/60.0
2026-01-21T20:51:37.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:37.451 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:37.451 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:39.279 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:51:39.296 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:51:26.033487
2026-01-21T20:51:39.296 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:51:26.033487
2026-01-21T20:51:39.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:51:39.296 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:51:39.296 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:51:39.296 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:51:39&start_after=2026-01-20T18:51:39&end_after=2026-01-21T18:51:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:51:39.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:51:39.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:51:39.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:51:39.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:51:39.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:51:39.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:51:39.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:51:39.456 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:51:39.456 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:51:39.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:51:39.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:51:39.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 424.543716
2026-01-21T20:51:39.457 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:51:39.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.939/60.0
2026-01-21T20:51:40.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:40.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:40.471 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:40.471 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:41.459 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:51:41.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:51:41.460 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:51:41.460270    Obs time: 2026-01-21 18:58:44
2026-01-21T20:51:41.460 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:02.539730
2026-01-21T20:51:41.460 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  422
2026-01-21T20:51:41.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:51:41.533 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.895/60.0
2026-01-21T20:51:43.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:43.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:43.491 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:43.491 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:43.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.845/60.0
2026-01-21T20:51:45.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.8/60.0
2026-01-21T20:51:46.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:46.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:46.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:46.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:47.639 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.777/60.0
2026-01-21T20:51:48.466 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:51:49.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:49.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:49.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:49.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:49.663 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.738/60.0
2026-01-21T20:51:51.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.715/60.0
2026-01-21T20:51:52.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:52.522 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:52.522 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:52.522 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:53.751 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.687/60.0
2026-01-21T20:51:55.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:55.544 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:55.544 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:55.544 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:55.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.626/60.0
2026-01-21T20:51:57.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.587/60.0
2026-01-21T20:51:58.475 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:51:58.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:51:58.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:51:58.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:51:58.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:51:59.852 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.548/60.0
2026-01-21T20:52:01.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:01.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:01.565 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:01.565 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:01.913 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.525/60.0
2026-01-21T20:52:03.952 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:04.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:04.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:04.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:04.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:05.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:07.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:07.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T20:52:07.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:07.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T20:52:08.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:08.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:52:10.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:10.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:10.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T20:52:10.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:10.614 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:12.119 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:13.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:13.635 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:13.635 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:13.635 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:14.163 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:16.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:16.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:16.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:16.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:16.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:18.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:18.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:52:19.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:19.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:19.662 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:19.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:20.291 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:22.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:22.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:22.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:22.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:22.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:24.370 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:25.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:25.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:25.687 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:25.687 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:26.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 2/4 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:52:26.763 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:52:26.763 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:52:26.782 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:52:28.496 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:52:28.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:52:28.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 4
2026-01-21T20:52:28.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 4: 3
2026-01-21T20:52:28.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:52:28.689 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:52:28.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:52:28.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:52:28.689 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:52:28.690 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:52:28.690 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:52:28.690 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:52:28.700 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:52:28.701 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:52:28.701 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T20:52:28.701 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T20:52:28.701 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T20:52:28.764 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T20:52:29.784 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T20:52:30.805 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T20:52:31.878 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T20:52:32.879 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:52:32.894 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T20:52:33.895 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:52:33.896 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.66
2026-01-21T20:52:33.896 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:51:58
2026-01-21T20:52:33.896 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:51:58
2026-01-21T20:52:33.896 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T20:52:33.896 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09032842519685037
2026-01-21T20:52:33.899 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T20:52:33.899 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:52:33.899 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:52:33.899 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:52:33.946 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T20:52:34.948 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:52:34.948 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:52:34.948 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:52:35.989 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:52:38.010 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='00:30:19.80', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-33:15:00.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2026ob', comment='The object name')]
2026-01-21T20:52:38.011 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:52:38.011 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:52:38.011 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:52:38.011 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:52:38.013 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:52:38.013 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:52:38.014 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:52:38.165 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:52:38.165 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:52:38.167 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021558.1670594
2026-01-21T20:52:38.503 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:52:38.504 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:52:26.231466
2026-01-21T20:52:38.504 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:52:26.231466
2026-01-21T20:52:38.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:52:38.504 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:52:38.504 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:52:38.504 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:52:38&start_after=2026-01-20T18:52:38&end_after=2026-01-21T18:52:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:52:38.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:52:38.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:52:38.628 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:52:38.630 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.630 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.633 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:52:38.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:52:38.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:52:38.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:52:38.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:52:38.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:52:38.645 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:52:38.645 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:52:38.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:52:38.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:52:38.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 365.354012
2026-01-21T20:52:38.646 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:52:39.012 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:39.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:39.032 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:39.032 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:40.648 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:52:40.668 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:52:40.669 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:52:40.668992    Obs time: 2026-01-21 18:58:44
2026-01-21T20:52:40.669 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:03.331008
2026-01-21T20:52:40.669 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  363
2026-01-21T20:52:40.669 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:52:42.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:42.036 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:42.036 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:42.036 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:43.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.632/60.0
2026-01-21T20:52:45.039 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:45.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:45.056 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:45.056 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:45.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.582/60.0
2026-01-21T20:52:47.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.56/60.0
2026-01-21T20:52:47.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:52:48.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:48.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:48.058 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:48.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:49.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.52/60.0
2026-01-21T20:52:51.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:51.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:51.079 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:51.079 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:51.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.497/60.0
2026-01-21T20:52:53.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.469/60.0
2026-01-21T20:52:54.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:54.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:54.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:54.104 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:55.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.429/60.0
2026-01-21T20:52:57.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:52:57.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:52:57.108 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:52:57.108 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:52:57.686 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:52:57.799 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.406/60.0
2026-01-21T20:52:59.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.367/60.0
2026-01-21T20:53:00.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:00.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:00.111 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:00.111 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:01.850 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.344/60.0
2026-01-21T20:53:03.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:03.131 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:03.131 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:03.131 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:03.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.316/60.0
2026-01-21T20:53:05.918 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.277/60.0
2026-01-21T20:53:06.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:06.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:06.135 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:06.135 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:07.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:53:07.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.249/60.0
2026-01-21T20:53:09.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:09.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:09.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:09.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:09.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.225/60.0
2026-01-21T20:53:12.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.182/60.0
2026-01-21T20:53:12.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:12.188 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:12.188 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:12.188 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:14.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.16/60.0
2026-01-21T20:53:15.191 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:15.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:15.209 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:15.209 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:16.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.136/60.0
2026-01-21T20:53:17.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:53:18.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.076/60.0
2026-01-21T20:53:18.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:18.230 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:18.230 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:18.230 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:20.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.036/60.0
2026-01-21T20:53:21.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:21.255 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:21.255 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:21.255 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:22.235 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.971/60.0
2026-01-21T20:53:24.258 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:24.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.931/60.0
2026-01-21T20:53:24.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:24.259 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:24.259 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:26.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.908/60.0
2026-01-21T20:53:27.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:27.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:27.285 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:27.285 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:27.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:53:28.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.864/60.0
2026-01-21T20:53:30.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:30.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:30.289 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:30.289 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:30.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.819/60.0
2026-01-21T20:53:32.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.764/60.0
2026-01-21T20:53:33.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:33.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:33.309 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:33.309 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:34.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.741/60.0
2026-01-21T20:53:36.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:36.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:36.313 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:36.314 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:36.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.718/60.0
2026-01-21T20:53:37.719 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:53:37.738 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:53:26.428786
2026-01-21T20:53:37.738 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:53:26.428786
2026-01-21T20:53:37.738 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:53:37.738 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:53:37.738 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:53:37.738 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:53:37&start_after=2026-01-20T18:53:37&end_after=2026-01-21T18:53:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:53:37.865 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:53:37.866 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.867 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.868 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.869 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.870 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:53:37.871 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.872 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:53:37.873 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.874 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.874 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:53:37.876 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:53:37.877 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.879 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.879 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:53:37.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:53:37.882 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:53:37.882 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:53:37.882 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:53:37.882 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:53:37.882 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 306.117496
2026-01-21T20:53:37.883 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:53:38.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:39.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:39.335 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:39.335 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:39.335 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:39.885 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:53:39.885 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:53:39.886 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:53:39.886018    Obs time: 2026-01-21 18:58:44
2026-01-21T20:53:39.886 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:04.113982
2026-01-21T20:53:39.886 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  304
2026-01-21T20:53:39.886 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:53:40.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:42.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:42.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:42.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:42.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:42.637 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:44.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:45.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:45.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:45.361 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:45.361 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:46.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:46.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:53:48.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:48.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:48.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:48.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:48.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:50.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:51.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:51.392 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:51.392 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:51.392 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:52.805 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:54.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:54.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:54.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:54.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:54.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:56.894 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:53:56.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:53:57.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:53:57.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:53:57.420 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:53:57.420 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:53:58.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:54:00.423 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:00.424 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:00.424 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:00.424 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:00.586 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:54:00.586 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:54:00.588 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:54:03.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:54:03.427 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 4
2026-01-21T20:54:03.428 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 4: 4
2026-01-21T20:54:03.428 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:54:03.428 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:54:03.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:54:03.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:54:03.428 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:54:03.428 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:54:03.428 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:54:03.428 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:54:03.438 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:54:03.439 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:54:03.439 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-21T20:54:03.439 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-21T20:54:03.439 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-21T20:54:03.512 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-21T20:54:04.532 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-21T20:54:05.553 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-21T20:54:06.574 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-21T20:54:06.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:54:07.623 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-21T20:54:08.623 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:54:08.638 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T20:54:09.639 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T20:54:09.640 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.68
2026-01-21T20:54:09.640 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:53:35
2026-01-21T20:54:09.640 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:53:35
2026-01-21T20:54:09.640 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-21T20:54:09.640 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08975275590551181
2026-01-21T20:54:09.644 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-21T20:54:09.644 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T20:54:09.644 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T20:54:09.644 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T20:54:09.653 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T20:54:10.654 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T20:54:10.654 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:54:10.654 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:54:11.685 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:54:13.706 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='00:30:19.80', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-33:15:00.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2026ob', comment='The object name')]
2026-01-21T20:54:13.706 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T20:54:13.706 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T20:54:13.706 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T20:54:13.706 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T20:54:13.708 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T20:54:13.708 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:54:13.710 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:54:13.840 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T20:54:13.840 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T20:54:13.842 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769021653.842042
2026-01-21T20:54:14.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T20:54:14.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T20:54:14.707 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:14.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:14.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:14.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:16.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:54:17.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:17.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:17.754 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:17.754 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:19.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.6/60.0
2026-01-21T20:54:20.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:20.758 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:20.758 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:20.758 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:21.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-21T20:54:23.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.526/60.0
2026-01-21T20:54:23.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:23.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:23.781 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:23.781 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:25.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.487/60.0
2026-01-21T20:54:26.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:26.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:26.785 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:26.785 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:26.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:54:27.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.443/60.0
2026-01-21T20:54:29.515 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.367/60.0
2026-01-21T20:54:29.788 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:29.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:29.806 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:29.806 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:31.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.327/60.0
2026-01-21T20:54:32.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:32.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:32.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:32.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:33.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.289/60.0
2026-01-21T20:54:35.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.265/60.0
2026-01-21T20:54:35.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:35.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:35.834 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:35.834 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:36.931 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:54:36.950 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:54:26.635679
2026-01-21T20:54:36.950 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:54:26.635679
2026-01-21T20:54:36.950 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:54:36.950 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:54:36.951 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:54:36.951 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:54:36&start_after=2026-01-20T18:54:36&end_after=2026-01-21T18:54:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:54:37.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:54:37.070 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.070 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.073 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:54:37.075 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.075 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:54:37.076 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:54:37.079 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:54:37.081 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.082 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:54:37.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:54:37.085 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:54:37.085 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:54:37.085 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:54:37.085 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:54:37.085 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 246.914169
2026-01-21T20:54:37.086 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:54:37.655 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.236/60.0
2026-01-21T20:54:38.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:38.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:38.856 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:38.856 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:39.088 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:54:39.089 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:54:39.089 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:54:39.089562    Obs time: 2026-01-21 18:58:44
2026-01-21T20:54:39.089 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:04.910438
2026-01-21T20:54:39.089 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  244
2026-01-21T20:54:39.089 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:54:39.710 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.187/60.0
2026-01-21T20:54:41.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.133/60.0
2026-01-21T20:54:41.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:41.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:41.858 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:41.858 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:43.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.11/60.0
2026-01-21T20:54:44.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:44.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:44.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:44.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:45.833 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.05/60.0
2026-01-21T20:54:46.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:54:47.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:47.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:47.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:47.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:47.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.009/60.0
2026-01-21T20:54:49.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.948/60.0
2026-01-21T20:54:50.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:50.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:50.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:50.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:51.993 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.888/60.0
2026-01-21T20:54:53.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:53.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:53.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:53.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:54.037 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.849/60.0
2026-01-21T20:54:56.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.804/60.0
2026-01-21T20:54:56.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:54:56.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:56.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:56.935 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:56.935 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:54:58.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.76/60.0
2026-01-21T20:54:59.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:54:59.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:54:59.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:54:59.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:00.165 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.704/60.0
2026-01-21T20:55:02.193 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.676/60.0
2026-01-21T20:55:02.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:02.974 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:02.974 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:02.974 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:04.216 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.648/60.0
2026-01-21T20:55:05.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:05.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:05.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:05.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:06.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:55:06.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.626/60.0
2026-01-21T20:55:08.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.565/60.0
2026-01-21T20:55:08.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:09.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:09.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:09.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:10.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.527/60.0
2026-01-21T20:55:12.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:12.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:12.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:12.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:12.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.486/60.0
2026-01-21T20:55:14.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:15.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:15.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:15.021 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:15.021 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:16.123 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:55:16.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:18.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:18.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:18.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:18.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:18.517 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:20.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:21.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:21.044 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:21.044 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:21.044 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:22.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:24.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:24.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:24.048 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:24.048 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:24.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:26.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:55:26.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:27.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:27.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:27.073 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:27.073 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:28.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:30.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:30.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:30.078 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:30.078 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:30.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:32.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:33.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:33.102 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:33.102 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:33.102 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:34.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2026ob_phot_17229279_13435_13481.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T20:55:36.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T20:55:36.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T20:55:36.121 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T20:55:36.122 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T20:55:36.143 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:55:36.144 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:55:26.834514
2026-01-21T20:55:36.144 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:55:26.834514
2026-01-21T20:55:36.144 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:55:36.144 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:55:36.144 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:55:36.144 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:55:36&start_after=2026-01-20T18:55:36&end_after=2026-01-21T18:55:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:55:36.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:55:36.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:55:36.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:55:36.267 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:55:36.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:55:36.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.273 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:55:36.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:55:36.276 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:55:36.276 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:55:36.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:55:36.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:55:36.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 187.723527
2026-01-21T20:55:36.277 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:55:36.301 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T20:55:36.301 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T20:55:36.303 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T20:55:38.279 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:55:38.280 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:55:38.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:55:38.280530    Obs time: 2026-01-21 18:58:44
2026-01-21T20:55:38.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:05.719470
2026-01-21T20:55:38.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  185
2026-01-21T20:55:38.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:55:39.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T20:55:39.125 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 4
2026-01-21T20:55:39.125 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:55:39.125 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:55:39.796 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:55:39.796 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script AT2026ob_phot_17229279_13435_13481.json was run successfully
2026-01-21T20:55:39.796 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508032 COMPLETED 13481 reason
2026-01-21T20:55:39.796 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508032 COMPLETED 13481 reason
2026-01-21T20:55:39.796 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:55:39.796 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:55:39.796 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:55:39.796 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:55:39.796 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:55:39.796 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:55:42.799 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:55:42.799 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:55:44.809 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:55:44.809 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:55:44.809 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T20:55:44.809 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T20:55:44.809 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T20:55:44.811 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T20:55:44.811 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T18:58:44Z
2026-01-21T20:55:44.811 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T20:55:44.811 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T20:55:44.811 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T20:55:44.811 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T20:55:44.811 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T20:55:44.811 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:55:44.811 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:55:45.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:55:45.312 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:55:45.312 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T20:55:45.312 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:55:45.312 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T20:55:45.312 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T20:55:45.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T20:55:45.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T20:55:45.312 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T20:55:45.312 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T20:55:45.331 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 00:31:37.08228   Targ dec = -33:06:23.0796
2026-01-21T20:55:45.332 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T20:55:45.332 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T20:55:45.332 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T20:55:45.339 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T20:55:45.339 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T20:55:45.339 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T20:55:45.339 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T20:55:46.373 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T20:55:48.375 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T20:55:48.375 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T20:55:48.375 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T20:55:48.815 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T20:55:48.815 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T20:55:48.815 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T20:55:48.815 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T20:55:48.815 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T20:55:48.815 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508032
2026-01-21T20:55:48.815 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T20:55:48.815 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T20:55:48.815 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T18:45:46', 'end': '2026-01-21T18:55:48', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '602.0', 'events': {}}} with config status ID 17508032
2026-01-21T20:55:48.987 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:55:48.987 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:45:21Z', 'guide_off', 'config_id 13481', 'config_status_id 17508032', 'update_OCS 17508032 ATTEMPTED', 'run_script setup_AT2026ob_phot_17229279_13435_13481.json', 'run_script AT2026ob_phot_17229279_13435_13481.json', 'update_OCS 17508032 COMPLETED 13481 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T18:58:44Z', 'run_script arc_flat_lamp_off.json'] at time 20:55:48
2026-01-21T20:55:55.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:56:05.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:56:15.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:56:25.324 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:56:35.333 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:56:35.334 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:56:27.034060
2026-01-21T20:56:35.334 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:56:27.034060
2026-01-21T20:56:35.334 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:56:35.334 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:56:35.335 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:56:35.335 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:56:35&start_after=2026-01-20T18:56:35&end_after=2026-01-21T18:56:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:56:35.459 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:56:35.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.461 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:56:35.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:56:35.467 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:56:35.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:56:35.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:56:35.474 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:56:35.476 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:56:35.476 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:56:35.476 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:56:35.476 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:56:35.476 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 128.523607
2026-01-21T20:56:35.477 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:56:37.479 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:56:37.480 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:56:37.480 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:56:37.480262    Obs time: 2026-01-21 18:58:44
2026-01-21T20:56:37.480 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:06.519738
2026-01-21T20:56:37.480 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  126
2026-01-21T20:56:37.480 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:56:44.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:56:54.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:57:04.505 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:57:14.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:57:24.526 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:57:34.537 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:57:34.553 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:57:27.231827
2026-01-21T20:57:34.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:57:27.231827
2026-01-21T20:57:34.553 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:57:34.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:57:34.553 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:57:34.553 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:57:34&start_after=2026-01-20T18:57:34&end_after=2026-01-21T18:57:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:57:34.669 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:57:34.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.671 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.673 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.673 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:57:34.675 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.676 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:57:34.676 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.677 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:57:34.679 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:57:34.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.683 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:57:34.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:57:34.686 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:57:34.686 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:57:34.686 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:57:34.686 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:57:34.686 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 69.313375
2026-01-21T20:57:34.687 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:57:36.689 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:57:36.709 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:57:36.709 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:57:36.709301    Obs time: 2026-01-21 18:58:44
2026-01-21T20:57:36.709 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:07.290699
2026-01-21T20:57:36.709 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  67
2026-01-21T20:57:36.709 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:57:43.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:57:53.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:58:03.737 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:58:13.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:58:23.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:58:33.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:58:33.769 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:58:27.428974
2026-01-21T20:58:33.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:58:27.428974
2026-01-21T20:58:33.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:58:33.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:58:33.770 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:58:33.770 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:58:33&start_after=2026-01-20T18:58:33&end_after=2026-01-21T18:58:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:58:33.891 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:58:33.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.893 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:58:33.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:58:33.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:58:33.901 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:58:33.903 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.904 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:58:33.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:58:33.907 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:58:33.907 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:58:33.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:58:33.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:58:33.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 10.092515
2026-01-21T20:58:33.908 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:58:35.910 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:58:35.928 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:58:35.928 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:58:35.928267    Obs time: 2026-01-21 18:58:44
2026-01-21T20:58:35.928 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:08.071733
2026-01-21T20:58:35.928 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  8
2026-01-21T20:58:35.928 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T20:58:42.935 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:58:52.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:59:02.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T20:59:12.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T20:59:22.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T20:59:32.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T20:59:33.006 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T20:59:27.630403
2026-01-21T20:59:33.006 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T20:59:27.630403
2026-01-21T20:59:33.006 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T20:59:33.006 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T20:59:33.006 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T20:59:33.006 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T18:59:33&start_after=2026-01-20T18:59:33&end_after=2026-01-21T18:59:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T20:59:33.125 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:59:33.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.127 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:59:33.131 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.131 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:59:33.132 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.133 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.133 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:59:33.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:59:33.136 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.138 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.138 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T20:59:33.139 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T20:59:33.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T20:59:33.141 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T20:59:33.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T20:59:33.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T18:58:44Z
2026-01-21T20:59:33.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -49.141284
2026-01-21T20:59:33.142 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T20:59:35.144 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T20:59:35.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T20:59:35.145 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 18:59:35.145253    Obs time: 2026-01-21 18:58:44
2026-01-21T20:59:35.145 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:08.854747
2026-01-21T20:59:35.145 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86348
2026-01-21T20:59:35.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:58:44Z', 'guide_off', 'config_id 13497', 'config_status_id 17508276', 'update_OCS 17508276 ATTEMPTED', 'run_script setup_SN2025aarn_phot_17229523_13451_13497.json', 'run_script SN2025aarn_phot_17229523_13451_13497.json', 'update_OCS 17508276 COMPLETED 13497 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:19:07Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T20:59:35.145 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T20:59:35.145 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T20:59:35.145 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T20:59:35.145 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T20:59:35.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T20:59:35.145 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:59:35.146 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:59:35.146 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:59:35.146 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:59:35.146 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:59:38.149 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:59:38.149 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:59:40.151 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:59:40.151 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:59:40.151 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T18:58:44Z
2026-01-21T20:59:40.151 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T18:58:44Z
2026-01-21T20:59:40.151 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T20:59:40.151 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T20:59:40.151 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T20:59:40.151 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T20:59:40.151 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T20:59:40.151 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T20:59:42.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T20:59:43.154 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T20:59:43.154 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T20:59:45.205 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T20:59:45.205 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13497
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13497
2026-01-21T20:59:45.205 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17508276
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17508276
2026-01-21T20:59:45.205 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508276 ATTEMPTED
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508276 ATTEMPTED
2026-01-21T20:59:45.205 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T20:59:45.205 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T20:59:45.205 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 4.6221, 'targ_dec': -8.77665408641, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '04:37:19.58', 'targ_dec': '-08:46:35.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_SN2025aarn_phot_17229523_13451_13497.json'}
2026-01-21T20:59:45.206 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T20:59:45.206 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T20:59:45.206 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T20:59:45.206 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508276
2026-01-21T20:59:45.206 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T20:59:45.206 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T20:59:45.206 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17508276
2026-01-21T20:59:45.289 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T20:59:45.706 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T20:59:45.706 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_SN2025aarn_phot_17229523_13451_13497.json 1 times
2026-01-21T20:59:45.706 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T20:59:45.708 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T20:59:45.708 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T20:59:45.708 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T20:59:48.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:49.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:50.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:51.788 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:52.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T20:59:52.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:53.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:54.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:55.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:56.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:57.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:58.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T20:59:59.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:00.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:02.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:02.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:00:03.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:04.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:05.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:06.079 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:07.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:08.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:09.136 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:10.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:11.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:12.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:00:12.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:13.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:14.227 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:15.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:16.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:17.283 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:18.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:19.323 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:20.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:21.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:00:22.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:00:22.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:23.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:24.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:25.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:26.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:27.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:28.541 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:29.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:30.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:31.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:32.201 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:00:32.202 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:00:27.830245
2026-01-21T21:00:32.249 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:00:27.830245
2026-01-21T21:00:32.250 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:00:32.250 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:00:32.250 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:00:32.250 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:00:32&start_after=2026-01-20T19:00:32&end_after=2026-01-21T19:00:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:00:32.368 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.369 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.370 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:00:32.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:00:32.375 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:00:32.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:00:32.379 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.381 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:00:32.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:00:32.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1191.614522
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:00:32.385510    Obs time: 2026-01-21 19:20:24
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:51.614490
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1191
2026-01-21T21:00:32.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:00:32.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:00:33.639 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T21:00:33.640 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  4.62245977765115 is close enough to target ra = 4.6221
2026-01-21T21:00:33.640 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -8.77578411961286 is close enough to target dec = -8.77665408641
2026-01-21T21:00:33.640 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T21:00:33.640 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:00:33.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:00:33.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:00:33.640 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:00:33.641 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T21:00:33.641 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T21:00:33.652 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:00:33.652 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:00:33.849 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T21:00:34.869 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T21:00:35.889 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T21:00:36.909 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T21:00:37.929 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T21:00:38.950 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T21:00:40.008 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:00:41.009 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:00:41.009 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:00:41.023 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:00:41.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:00:42.025 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:00:42.076 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:00:43.078 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:00:43.079 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.51
2026-01-21T21:00:43.079 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:59:28
2026-01-21T21:00:43.080 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:59:28
2026-01-21T21:00:43.080 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:00:43.080 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09023409448818895
2026-01-21T21:00:43.083 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T21:00:43.083 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T21:00:43.083 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T21:00:43.092 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:00:43.092 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:00:43.167 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:00:44.168 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:00:44.168 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:00:44.220 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:00:45.221 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:00:45.273 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:00:46.274 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:00:46.276 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.51
2026-01-21T21:00:46.276 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 20:59:28
2026-01-21T21:00:46.276 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T20:59:28
2026-01-21T21:00:46.276 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:00:46.276 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09023409448818895
2026-01-21T21:00:51.364 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T21:00:51.364 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:00:51.364 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:00:51.365 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:00:51.365 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:00:51.365 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:00:51.367 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:00:51.367 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:00:51.368 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:00:51.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:00:51.592 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:00:51.592 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:00:51.594 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022051.5942416
2026-01-21T21:00:57.857 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:00:57.864 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:00:57.866 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:00:57.875 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T21:01:01.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:01:01.878 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T21:01:01.878 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T21:01:11.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:01:11.940 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T21:01:11.940 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:01:11.940 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 04:37:19.58 = 249593.7 arcseconds
2026-01-21T21:01:11.940 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -08:46:35.95 = -31595.95 arcseconds
2026-01-21T21:01:11.940 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T21:01:11.963 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:01:11.963 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.325
2026-01-21T21:01:11.963 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:01:11.963 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (04:37:20.623, -08:46:19.788).
2026-01-21T21:01:11.963 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  04 37 20.623  -08 46 19.788 .
2026-01-21T21:01:11.963 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 04 37 20.623  -08 46 19.788 .
2026-01-21T21:01:11.963 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 249609.345
2026-01-21T21:01:11.963 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -31579.788
2026-01-21T21:01:12.175 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:01:17.181 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T21:01:17.181 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:01:17.181 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:01:17.181 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:01:17.181 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:01:17.181 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:01:17.183 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:01:17.183 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:01:17.185 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:01:17.275 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:01:17.275 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:01:17.277 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022077.2773356
2026-01-21T21:01:18.683 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:01:21.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:01:21.537 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:01:21.537 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:01:21.539 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:01:21.689 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T21:01:25.693 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T21:01:31.442 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:01:31.443 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:01:28.029986
2026-01-21T21:01:31.443 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:01:28.029986
2026-01-21T21:01:31.443 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:01:31.443 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:01:31.443 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:01:31.443 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:01:31&start_after=2026-01-20T19:01:31&end_after=2026-01-21T19:01:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:01:31.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:01:31.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:01:31.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:01:31.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:01:31.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:01:31.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:01:31.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1132.420447
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:01:31.579586    Obs time: 2026-01-21 19:20:24
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:52.420414
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1132
2026-01-21T21:01:31.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:01:35.744 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T21:01:35.744 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:01:35.744 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 04:37:19.58 = 249593.7 arcseconds
2026-01-21T21:01:35.744 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -08:46:35.95 = -31595.95 arcseconds
2026-01-21T21:01:35.744 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T21:01:35.764 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:01:35.764 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.339
2026-01-21T21:01:35.764 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:01:35.764 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (04:37:19.578, -08:46:36.430).
2026-01-21T21:01:35.764 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  04 37 19.578  -08 46 36.430 .
2026-01-21T21:01:35.764 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 04 37 19.578  -08 46 36.430 .
2026-01-21T21:01:35.764 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 249593.67
2026-01-21T21:01:35.764 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -31596.43
2026-01-21T21:01:35.975 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:01:40.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:01:40.981 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T21:01:40.981 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:01:40.981 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:01:40.981 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:01:40.981 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:01:40.981 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:01:40.983 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:01:40.983 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:01:40.985 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:01:41.078 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:01:41.078 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:01:41.079 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022101.079814
2026-01-21T21:01:42.483 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:01:45.338 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:01:45.339 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:01:45.340 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:01:45.489 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T21:01:50.599 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:01:51.495 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:01:51.495 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:01:51.495 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:01:51.495 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:01:51.495 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:01:51.497 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:01:51.497 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:01:51.500 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:01:51.606 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:01:51.606 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:01:51.608 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022111.6086679
2026-01-21T21:01:52.997 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:01:55.868 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:01:55.868 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:01:55.870 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:01:56.003 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T21:02:00.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:02:02.947 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2093  5785  13.4 to host 127.0.0.1 on port 12360
2026-01-21T21:02:02.947 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:02:02.947 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:02:05.950 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2093  5785  13.4
2026-01-21T21:02:05.950 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2093  5785  13.4
2026-01-21T21:02:07.952 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:02:10.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:02:20.672 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:02:30.682 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:02:30.697 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:02:28.233790
2026-01-21T21:02:30.697 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:02:28.233790
2026-01-21T21:02:30.697 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:02:30.697 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:02:30.698 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:02:30.698 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:02:30&start_after=2026-01-20T19:02:30&end_after=2026-01-21T19:02:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:02:30.817 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.818 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.819 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.820 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.821 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:02:30.827 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:02:30.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:02:30.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:02:30.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:02:30.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:02:30.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1073.160697
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:02:30.839335    Obs time: 2026-01-21 19:20:24
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:53.160665
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1073
2026-01-21T21:02:30.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:02:39.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:02:46.992 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T21:02:46.992 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:02:46.992 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:02:49.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:02:49.995 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T21:02:49.995 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T21:02:51.997 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:02:51.997 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:02:51.997 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:02:51.997 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:02:51.997 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:02:51.997 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:02:51.997 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:02:51.997 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:02:53.008 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:02:55.010 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:02:55.010 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:02:55.010 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:02:55.514 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:02:55.514 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_SN2025aarn_phot_17229523_13451_13497.json was run successfully
2026-01-21T21:02:55.514 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T21:02:55.514 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T21:02:55.514 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T21:02:55.514 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script SN2025aarn_phot_17229523_13451_13497.json
2026-01-21T21:02:55.514 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'SN2025aarn', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '04:37:19.58', 'targ_dec': '-08:46:35.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'SN2025aarn', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '04:37:19.58', 'targ_dec': '-08:46:35.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'SN2025aarn', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '04:37:19.58', 'targ_dec': '-08:46:35.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'SN2025aarn', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '04:37:19.58', 'targ_dec': '-08:46:35.95', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}], 'script_name': 'SN2025aarn_phot_17229523_13451_13497.json'}
2026-01-21T21:02:55.514 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:02:55.514 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:02:56.015 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:02:56.015 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script SN2025aarn_phot_17229523_13451_13497.json 1 times
2026-01-21T21:02:56.015 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 4: 1
2026-01-21T21:02:56.015 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:02:56.015 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:02:56.015 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:02:56.015 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:02:56.015 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:02:56.015 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:02:56.015 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:02:56.015 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:02:56.025 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:02:56.026 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:02:56.026 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T21:02:56.026 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T21:02:56.026 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T21:02:56.216 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T21:02:57.236 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T21:02:58.256 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T21:02:59.277 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T21:02:59.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:03:00.298 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-21T21:03:01.319 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-21T21:03:02.339 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 7
2026-01-21T21:03:03.384 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T21:03:04.385 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:03:04.437 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T21:03:05.438 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:03:05.440 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 23.32
2026-01-21T21:03:05.440 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:02:40
2026-01-21T21:03:05.440 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:02:40
2026-01-21T21:03:05.440 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T21:03:05.440 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08830204724409446
2026-01-21T21:03:05.443 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T21:03:05.443 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:03:05.443 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:03:05.443 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:03:05.490 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T21:03:06.491 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:03:06.491 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:03:06.491 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:03:07.536 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:03:09.539 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='04:37:19.58', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-08:46:35.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025aarn', comment='The object name')]
2026-01-21T21:03:09.539 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:03:09.539 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:03:09.540 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:03:09.540 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:03:09.542 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:03:09.542 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:03:09.543 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:03:09.644 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:03:09.644 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:03:09.646 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022189.6464865
2026-01-21T21:03:09.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:03:10.040 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:03:10.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:03:10.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:10.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:10.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:10.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:13.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:13.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:13.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:13.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:15.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.553/180.0
2026-01-21T21:03:16.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:16.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:16.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:16.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:17.164 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.514/180.0
2026-01-21T21:03:19.194 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.483/180.0
2026-01-21T21:03:19.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:19.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:19.553 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:19.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:19.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:03:21.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.452/180.0
2026-01-21T21:03:22.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:22.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:22.558 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:22.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:23.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.421/180.0
2026-01-21T21:03:25.286 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.391/180.0
2026-01-21T21:03:25.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:25.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:25.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:25.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:27.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.361/180.0
2026-01-21T21:03:28.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:28.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:28.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:28.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:29.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.332/180.0
2026-01-21T21:03:29.899 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:03:29.900 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:03:28.433484
2026-01-21T21:03:29.900 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:03:28.433484
2026-01-21T21:03:29.900 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:03:29.900 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:03:29.900 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:03:29.900 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:03:29&start_after=2026-01-20T19:03:29&end_after=2026-01-21T19:03:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:03:30.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.047 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.048 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.050 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:03:30.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:03:30.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:03:30.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:03:30.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:03:30.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:03:30.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:03:30.062 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:03:30.062 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:03:30.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:03:30.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:03:30.063 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1013.936978
2026-01-21T21:03:30.063 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:03:30.063054    Obs time: 2026-01-21 19:20:24
2026-01-21T21:03:30.063 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:53.936946
2026-01-21T21:03:30.063 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1013
2026-01-21T21:03:30.063 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:03:31.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.3/180.0
2026-01-21T21:03:31.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:31.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:31.591 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:31.591 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:33.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.269/180.0
2026-01-21T21:03:34.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:34.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:34.595 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:34.595 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:35.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.239/180.0
2026-01-21T21:03:37.469 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.208/180.0
2026-01-21T21:03:37.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:37.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:37.598 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:37.598 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:39.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:03:39.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.178/180.0
2026-01-21T21:03:40.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:40.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:40.623 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:40.623 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:41.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.148/180.0
2026-01-21T21:03:43.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.118/180.0
2026-01-21T21:03:43.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:43.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:43.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:43.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:45.591 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.086/180.0
2026-01-21T21:03:46.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:46.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:46.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:46.630 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:47.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.056/180.0
2026-01-21T21:03:49.080 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:03:49.630 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:49.631 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:03:49.631 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:49.631 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:03:49.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.026/180.0
2026-01-21T21:03:51.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.995/180.0
2026-01-21T21:03:52.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:52.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:03:52.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:52.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:53.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.964/180.0
2026-01-21T21:03:55.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:55.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:55.637 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:55.637 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:55.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.933/180.0
2026-01-21T21:03:57.850 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.865/180.0
2026-01-21T21:03:58.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:03:58.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:03:58.642 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:03:58.642 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:03:59.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:03:59.918 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.797/180.0
2026-01-21T21:04:01.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:01.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:01.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:01.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:01.986 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.729/180.0
2026-01-21T21:04:04.054 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.662/180.0
2026-01-21T21:04:04.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:04.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:04:04.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:04.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T21:04:06.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.592/180.0
2026-01-21T21:04:07.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:07.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T21:04:07.654 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:07.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:08.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.449/180.0
2026-01-21T21:04:09.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:04:10.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.42/180.0
2026-01-21T21:04:10.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:10.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:04:10.658 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:10.658 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:04:12.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.388/180.0
2026-01-21T21:04:13.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:13.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T21:04:13.662 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:13.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:04:14.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.358/180.0
2026-01-21T21:04:16.351 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.327/180.0
2026-01-21T21:04:16.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:16.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:04:16.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:16.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:18.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.296/180.0
2026-01-21T21:04:19.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:04:19.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:19.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:04:19.687 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:19.687 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:04:20.412 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.265/180.0
2026-01-21T21:04:22.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.236/180.0
2026-01-21T21:04:22.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:22.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:04:22.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:22.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:24.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.204/180.0
2026-01-21T21:04:25.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:25.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:25.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:25.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:26.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.175/180.0
2026-01-21T21:04:28.534 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.143/180.0
2026-01-21T21:04:28.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:28.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:28.713 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:28.713 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:29.116 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:04:29.117 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:04:28.633170
2026-01-21T21:04:29.117 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:04:28.633170
2026-01-21T21:04:29.117 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:04:29.117 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:04:29.118 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:04:29.118 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:04:29&start_after=2026-01-20T19:04:29&end_after=2026-01-21T19:04:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:04:29.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.241 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.242 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.243 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.243 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:04:29.245 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.246 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:04:29.246 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.247 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.248 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:04:29.249 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:04:29.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.252 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:04:29.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:04:29.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 954.743381
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:04:29.256650    Obs time: 2026-01-21 19:20:24
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:54.743350
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  954
2026-01-21T21:04:29.256 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:04:30.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.113/180.0
2026-01-21T21:04:31.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:31.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:04:31.717 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:31.717 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:04:32.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.082/180.0
2026-01-21T21:04:34.625 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.052/180.0
2026-01-21T21:04:34.720 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:34.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:04:34.721 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:34.721 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:36.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.022/180.0
2026-01-21T21:04:37.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:37.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:37.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:37.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:38.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:04:38.686 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.991/180.0
2026-01-21T21:04:40.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.961/180.0
2026-01-21T21:04:40.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:40.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:40.749 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:40.749 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:42.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.93/180.0
2026-01-21T21:04:43.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:43.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:43.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:43.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:44.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.9/180.0
2026-01-21T21:04:46.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:46.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:46.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:46.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:46.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.869/180.0
2026-01-21T21:04:48.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:04:48.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.839/180.0
2026-01-21T21:04:49.758 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:49.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:49.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:49.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:50.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.808/180.0
2026-01-21T21:04:52.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:52.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:52.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:52.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:52.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.778/180.0
2026-01-21T21:04:54.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.748/180.0
2026-01-21T21:04:55.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:55.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:55.782 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:55.782 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:56.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.717/180.0
2026-01-21T21:04:58.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:04:58.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:04:58.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:04:58.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:04:58.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:04:58.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.687/180.0
2026-01-21T21:05:01.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.658/180.0
2026-01-21T21:05:01.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:01.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:05:01.808 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:01.808 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:05:03.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.626/180.0
2026-01-21T21:05:04.811 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:04.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: -0.0010000000000047748
2026-01-21T21:05:04.812 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:04.812 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:05:05.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.596/180.0
2026-01-21T21:05:07.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.565/180.0
2026-01-21T21:05:07.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:07.816 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:05:07.816 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:07.816 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:08.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:05:09.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.535/180.0
2026-01-21T21:05:10.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:10.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:10.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:10.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:11.182 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.504/180.0
2026-01-21T21:05:13.241 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.466/180.0
2026-01-21T21:05:13.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:13.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T21:05:13.822 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:13.822 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:05:15.271 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.406/180.0
2026-01-21T21:05:16.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:16.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:05:16.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:16.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:17.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.376/180.0
2026-01-21T21:05:18.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:05:19.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.345/180.0
2026-01-21T21:05:19.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:19.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:19.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:19.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:21.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.315/180.0
2026-01-21T21:05:22.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:22.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:22.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:22.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:23.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.284/180.0
2026-01-21T21:05:25.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.254/180.0
2026-01-21T21:05:25.875 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:25.876 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:05:25.876 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:25.876 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:05:27.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.223/180.0
2026-01-21T21:05:28.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:05:28.316 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:04:28.633170
2026-01-21T21:05:28.316 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:04:28.633170
2026-01-21T21:05:28.316 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:05:28.316 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:05:28.316 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:05:28.316 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:05:28&start_after=2026-01-20T19:05:28&end_after=2026-01-21T19:05:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:05:28.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:05:28.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:05:28.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:05:28.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:05:28.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:05:28.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:05:28.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 895.548173
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:05:28.451859    Obs time: 2026-01-21 19:20:24
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:55.548141
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  895
2026-01-21T21:05:28.451 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:05:28.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:28.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:05:28.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:28.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:29.484 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.193/180.0
2026-01-21T21:05:31.515 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.164/180.0
2026-01-21T21:05:31.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:31.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:31.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:31.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:33.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.132/180.0
2026-01-21T21:05:34.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:34.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:34.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:34.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:35.576 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.103/180.0
2026-01-21T21:05:37.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:05:37.606 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.071/180.0
2026-01-21T21:05:37.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:37.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:37.921 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:37.921 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:39.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.041/180.0
2026-01-21T21:05:40.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:40.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:40.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:40.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:41.667 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.01/180.0
2026-01-21T21:05:43.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.98/180.0
2026-01-21T21:05:43.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:43.948 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:43.948 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:43.948 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:45.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.949/180.0
2026-01-21T21:05:46.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:46.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:46.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:46.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:47.469 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:05:47.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.919/180.0
2026-01-21T21:05:49.789 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.888/180.0
2026-01-21T21:05:49.951 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:49.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:05:49.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:49.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:51.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.858/180.0
2026-01-21T21:05:52.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:52.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:05:52.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:52.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:05:53.850 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.827/180.0
2026-01-21T21:05:55.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.796/180.0
2026-01-21T21:05:55.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:55.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: -0.0010000000000047748
2026-01-21T21:05:55.996 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:55.996 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:05:57.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:05:57.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.766/180.0
2026-01-21T21:05:58.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:05:58.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:05:58.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:05:58.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:05:59.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.736/180.0
2026-01-21T21:06:02.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:02.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:06:02.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:02.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:02.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.668/180.0
2026-01-21T21:06:04.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.599/180.0
2026-01-21T21:06:05.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:05.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T21:06:05.022 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:05.022 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:06:06.184 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.532/180.0
2026-01-21T21:06:07.488 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:06:08.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:08.044 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:06:08.044 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:08.044 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:08.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.464/180.0
2026-01-21T21:06:10.321 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:11.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:11.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:06:11.048 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:11.048 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:06:12.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:14.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:14.071 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:06:14.071 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:14.071 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:14.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:16.525 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:17.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:17.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:06:17.075 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:17.075 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:17.498 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:06:18.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:20.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:20.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:06:20.098 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:20.098 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:20.587 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:22.617 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:23.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:23.102 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:06:23.102 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:23.102 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:06:24.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:26.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:26.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T21:06:26.120 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:26.120 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:06:26.678 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:27.507 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:06:27.527 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:05:28.830900
2026-01-21T21:06:27.527 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:05:28.830900
2026-01-21T21:06:27.527 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:06:27.527 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:06:27.527 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:06:27.527 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:06:27&start_after=2026-01-20T19:06:27&end_after=2026-01-21T19:06:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:06:27.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:06:27.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:06:27.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:06:27.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:06:27.657 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.660 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:06:27.660 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:06:27.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 836.336657
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:06:27.663374    Obs time: 2026-01-21 19:20:24
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:56.336626
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  836
2026-01-21T21:06:27.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:06:28.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:29.123 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:29.124 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T21:06:29.124 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:29.124 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:06:30.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:32.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:32.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:06:32.147 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:32.147 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:32.770 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 1/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:06:33.376 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:06:33.377 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:06:33.395 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:06:35.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:06:35.150 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 4
2026-01-21T21:06:35.150 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 4: 2
2026-01-21T21:06:35.150 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:06:35.150 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:06:35.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:06:35.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:06:35.150 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:06:35.150 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:06:35.151 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:06:35.151 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:06:35.160 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:06:35.161 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:06:35.161 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T21:06:35.161 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T21:06:35.161 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T21:06:35.233 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T21:06:36.253 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T21:06:36.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:06:37.274 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T21:06:38.295 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-21T21:06:39.315 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 5
2026-01-21T21:06:40.358 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T21:06:41.359 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:06:41.411 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T21:06:42.412 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:06:42.413 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 22.23
2026-01-21T21:06:42.413 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:05:53
2026-01-21T21:06:42.413 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:05:53
2026-01-21T21:06:42.413 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T21:06:42.413 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08905043307086612
2026-01-21T21:06:42.417 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T21:06:42.417 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:06:42.417 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:06:42.417 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:06:42.463 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T21:06:43.464 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:06:43.465 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:06:43.465 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:06:44.502 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:06:46.524 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='04:37:19.58', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-08:46:35.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025aarn', comment='The object name')]
2026-01-21T21:06:46.524 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:06:46.524 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:06:46.525 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:06:46.525 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:06:46.527 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:06:46.527 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:06:46.529 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:06:46.647 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:06:46.647 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:06:46.649 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022406.6493118
2026-01-21T21:06:46.682 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:06:47.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:06:47.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:06:47.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:47.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:06:47.543 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:47.543 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:50.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:50.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:06:50.564 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:50.564 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:06:52.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.591/180.0
2026-01-21T21:06:53.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:53.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:06:53.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:53.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:54.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.551/180.0
2026-01-21T21:06:56.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.52/180.0
2026-01-21T21:06:56.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:56.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:06:56.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:56.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:06:56.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:06:58.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.49/180.0
2026-01-21T21:06:59.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:06:59.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:06:59.591 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:06:59.591 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:07:00.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.459/180.0
2026-01-21T21:07:02.250 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.43/180.0
2026-01-21T21:07:02.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:02.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:07:02.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:02.614 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:04.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.399/180.0
2026-01-21T21:07:05.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:05.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:05.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:05.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:06.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.37/180.0
2026-01-21T21:07:06.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:07:08.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.338/180.0
2026-01-21T21:07:08.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:08.639 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:08.639 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:08.639 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:10.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.309/180.0
2026-01-21T21:07:11.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:11.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:11.642 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:11.642 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:12.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.278/180.0
2026-01-21T21:07:14.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.246/180.0
2026-01-21T21:07:14.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:14.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:14.664 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:14.664 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:16.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.216/180.0
2026-01-21T21:07:16.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:07:17.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:17.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:17.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:17.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:18.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.186/180.0
2026-01-21T21:07:20.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.157/180.0
2026-01-21T21:07:20.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:20.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:20.691 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:20.691 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:22.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.126/180.0
2026-01-21T21:07:23.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:23.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:23.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:23.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:24.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.094/180.0
2026-01-21T21:07:26.615 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.064/180.0
2026-01-21T21:07:26.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:26.717 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:07:26.718 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:06:29.034322
2026-01-21T21:07:26.718 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:06:29.034322
2026-01-21T21:07:26.718 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:07:26.718 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:07:26.718 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:07:26.718 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:07:26&start_after=2026-01-20T19:07:26&end_after=2026-01-21T19:07:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:07:26.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:26.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:26.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:26.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:07:26.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:07:26.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:07:26.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:07:26.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:07:26.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:07:26.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:07:26.853 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:07:26.853 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:07:26.853 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:07:26.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:07:26.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 777.14596
2026-01-21T21:07:26.854 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:07:26.854072    Obs time: 2026-01-21 19:20:24
2026-01-21T21:07:26.854 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:57.145928
2026-01-21T21:07:26.854 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  777
2026-01-21T21:07:26.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:07:28.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.033/180.0
2026-01-21T21:07:29.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:29.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:29.722 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:29.722 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:30.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.005/180.0
2026-01-21T21:07:32.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.974/180.0
2026-01-21T21:07:32.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:32.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:32.740 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:32.740 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:34.775 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.942/180.0
2026-01-21T21:07:35.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:35.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:35.744 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:35.744 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:35.862 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:07:36.805 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.874/180.0
2026-01-21T21:07:38.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:38.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:38.768 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:38.768 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:38.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.844/180.0
2026-01-21T21:07:40.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.814/180.0
2026-01-21T21:07:41.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:41.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T21:07:41.770 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:41.770 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:07:42.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.783/180.0
2026-01-21T21:07:44.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:44.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:07:44.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:44.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:44.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.752/180.0
2026-01-21T21:07:45.872 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:07:46.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.722/180.0
2026-01-21T21:07:47.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:47.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:47.798 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:47.798 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:48.988 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.691/180.0
2026-01-21T21:07:50.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:50.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:50.817 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:50.817 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:51.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.661/180.0
2026-01-21T21:07:53.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.631/180.0
2026-01-21T21:07:53.820 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:53.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:53.821 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:53.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:55.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.563/180.0
2026-01-21T21:07:55.881 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:07:56.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:56.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:07:56.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:56.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:07:57.147 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.532/180.0
2026-01-21T21:07:59.177 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.502/180.0
2026-01-21T21:07:59.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:07:59.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:07:59.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:07:59.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:08:01.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.471/180.0
2026-01-21T21:08:02.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:02.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T21:08:02.860 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:02.860 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:08:03.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.442/180.0
2026-01-21T21:08:05.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.411/180.0
2026-01-21T21:08:05.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:05.864 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:08:05.864 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:05.864 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:05.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:08:07.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.38/180.0
2026-01-21T21:08:08.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:08.883 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:08.883 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:08.883 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:09.329 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.35/180.0
2026-01-21T21:08:11.360 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.319/180.0
2026-01-21T21:08:11.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:11.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:08:11.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:11.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:08:13.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.289/180.0
2026-01-21T21:08:14.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:14.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:08:14.905 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:14.905 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:15.421 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.258/180.0
2026-01-21T21:08:15.900 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:08:17.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.228/180.0
2026-01-21T21:08:17.908 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:17.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:17.909 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:17.909 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:19.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.198/180.0
2026-01-21T21:08:20.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:20.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:20.927 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:20.928 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:21.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.167/180.0
2026-01-21T21:08:23.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.138/180.0
2026-01-21T21:08:23.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:23.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:23.929 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:23.930 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:25.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.108/180.0
2026-01-21T21:08:25.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:08:25.927 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:07:29.235285
2026-01-21T21:08:25.927 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:07:29.235285
2026-01-21T21:08:25.927 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:08:25.928 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:08:25.928 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:08:25.928 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:08:25&start_after=2026-01-20T19:08:25&end_after=2026-01-21T19:08:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:08:26.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.048 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.048 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:08:26.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:08:26.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:08:26.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:08:26.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:08:26.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:08:26.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 717.937465
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:08:26.062567    Obs time: 2026-01-21 19:20:24
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:57.937433
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  717
2026-01-21T21:08:26.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:08:26.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:26.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:26.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:26.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:27.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.076/180.0
2026-01-21T21:08:29.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.046/180.0
2026-01-21T21:08:29.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:29.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:29.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:29.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:31.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.015/180.0
2026-01-21T21:08:32.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:32.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:32.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:32.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:33.694 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.985/180.0
2026-01-21T21:08:35.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:08:35.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.954/180.0
2026-01-21T21:08:35.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:35.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:35.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:35.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:37.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.924/180.0
2026-01-21T21:08:38.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:39.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:39.014 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:39.014 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:39.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.893/180.0
2026-01-21T21:08:41.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.863/180.0
2026-01-21T21:08:42.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:42.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:08:42.017 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:42.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:08:43.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.834/180.0
2026-01-21T21:08:45.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:45.043 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: -0.0010000000000047748
2026-01-21T21:08:45.043 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:45.043 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:08:45.081 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:08:45.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.802/180.0
2026-01-21T21:08:47.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.771/180.0
2026-01-21T21:08:48.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:48.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:08:48.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:48.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:49.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.742/180.0
2026-01-21T21:08:51.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:51.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:51.066 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:51.066 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:51.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.711/180.0
2026-01-21T21:08:53.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.682/180.0
2026-01-21T21:08:54.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:54.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:54.069 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:54.069 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:55.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:08:56.029 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.65/180.0
2026-01-21T21:08:57.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:08:57.092 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:08:57.092 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:08:57.092 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:08:58.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.619/180.0
2026-01-21T21:09:00.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.59/180.0
2026-01-21T21:09:00.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:00.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:00.110 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:00.110 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:02.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.558/180.0
2026-01-21T21:09:03.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:03.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:03.133 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:03.133 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:04.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.528/180.0
2026-01-21T21:09:05.101 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:09:06.136 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:06.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:06.137 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:06.137 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:06.182 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.497/180.0
2026-01-21T21:09:08.250 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.467/180.0
2026-01-21T21:09:09.140 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:09.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:09.158 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:09.158 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:10.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.401/180.0
2026-01-21T21:09:12.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:12.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:12.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:12.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:12.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.369/180.0
2026-01-21T21:09:14.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.338/180.0
2026-01-21T21:09:15.111 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:09:15.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:15.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:09:15.186 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:15.186 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:09:16.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.307/180.0
2026-01-21T21:09:18.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:18.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:09:18.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:18.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:18.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.278/180.0
2026-01-21T21:09:20.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.247/180.0
2026-01-21T21:09:21.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:21.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:21.213 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:21.213 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:22.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.218/180.0
2026-01-21T21:09:24.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:24.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:24.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:24.217 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:24.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.185/180.0
2026-01-21T21:09:25.121 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:09:25.139 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:08:29.438132
2026-01-21T21:09:25.139 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:08:29.438132
2026-01-21T21:09:25.139 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:09:25.139 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:09:25.139 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:09:25.139 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:09:25&start_after=2026-01-20T19:09:25&end_after=2026-01-21T19:09:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:09:25.258 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.260 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:09:25.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:09:25.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:09:25.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:09:25.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:09:25.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:09:25.273 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 658.724465
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:09:25.275567    Obs time: 2026-01-21 19:20:24
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:58.724433
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  658
2026-01-21T21:09:25.275 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:09:26.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.155/180.0
2026-01-21T21:09:27.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:27.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:09:27.241 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:27.241 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:09:28.555 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.126/180.0
2026-01-21T21:09:30.244 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:30.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T21:09:30.245 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:30.245 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:09:30.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.094/180.0
2026-01-21T21:09:32.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.065/180.0
2026-01-21T21:09:33.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:33.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:09:33.267 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:33.267 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:34.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:09:34.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.034/180.0
2026-01-21T21:09:36.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:36.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:36.271 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:36.271 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:36.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.002/180.0
2026-01-21T21:09:38.708 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.971/180.0
2026-01-21T21:09:39.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:39.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:09:39.292 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:39.292 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:09:40.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.942/180.0
2026-01-21T21:09:42.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:42.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:09:42.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:42.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:42.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.91/180.0
2026-01-21T21:09:44.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:09:44.800 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.88/180.0
2026-01-21T21:09:45.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:45.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:45.317 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:45.317 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:46.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:09:48.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:48.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:48.318 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:48.318 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:48.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:09:50.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:09:51.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:51.340 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:09:51.340 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:51.340 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T21:09:52.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:09:54.302 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:09:54.343 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:54.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T21:09:54.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:54.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:54.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:09:57.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:09:57.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:09:57.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:09:57.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:09:57.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:09:59.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:10:00.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:00.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:00.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:00.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:01.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:10:03.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:10:03.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:03.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:03.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:03.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:04.313 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:10:05.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:10:06.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:06.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:06.398 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:06.398 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:07.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:10:09.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 2/4 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:10:09.374 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:10:09.374 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:10:09.395 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:10:09.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:09.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:09.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:09.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:12.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:10:12.405 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 4
2026-01-21T21:10:12.405 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 4: 3
2026-01-21T21:10:12.405 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:10:12.405 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:10:12.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:10:12.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:10:12.405 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:10:12.405 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:10:12.405 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:10:12.405 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:10:12.415 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:10:12.416 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:10:12.416 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T21:10:12.416 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T21:10:12.416 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T21:10:12.466 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T21:10:13.486 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T21:10:14.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:10:14.555 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T21:10:15.576 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-21T21:10:16.597 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 5
2026-01-21T21:10:17.639 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T21:10:18.640 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:10:18.659 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T21:10:19.660 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:10:19.660 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.71
2026-01-21T21:10:19.661 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:10:10
2026-01-21T21:10:19.661 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:10:10
2026-01-21T21:10:19.661 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T21:10:19.661 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09157980314960627
2026-01-21T21:10:19.664 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T21:10:19.664 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:10:19.664 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:10:19.664 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:10:19.711 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T21:10:20.712 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:10:20.712 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:10:20.712 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:10:21.726 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:10:23.750 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='04:37:19.58', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-08:46:35.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025aarn', comment='The object name')]
2026-01-21T21:10:23.750 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:10:23.750 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:10:23.750 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:10:23.750 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:10:23.752 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:10:23.752 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:10:23.754 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:10:23.909 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:10:23.909 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:10:23.910 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022623.9108627
2026-01-21T21:10:24.251 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:10:24.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:10:24.333 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:10:24.334 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:09:29.639833
2026-01-21T21:10:24.334 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:09:29.639833
2026-01-21T21:10:24.334 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:10:24.334 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:10:24.334 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:10:24.334 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:10:24&start_after=2026-01-20T19:10:24&end_after=2026-01-21T19:10:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:10:24.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:10:24.456 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.456 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:10:24.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.458 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.458 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:10:24.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:10:24.462 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:10:24.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:10:24.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:10:24.467 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:10:24.467 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:10:24.467 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:10:24.467 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:10:24.467 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 599.532586
2026-01-21T21:10:24.468 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:10:24.751 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:24.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:24.771 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:24.771 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:26.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:10:26.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:10:26.492 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:10:26.492324    Obs time: 2026-01-21 19:20:24
2026-01-21T21:10:26.492 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:57.507676
2026-01-21T21:10:26.492 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  597
2026-01-21T21:10:26.492 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:10:27.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:27.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:27.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:27.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:29.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.629/180.0
2026-01-21T21:10:30.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:30.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:30.798 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:30.798 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:31.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.589/180.0
2026-01-21T21:10:33.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.559/180.0
2026-01-21T21:10:33.497 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:10:33.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:33.820 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:33.820 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:33.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:35.414 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.528/180.0
2026-01-21T21:10:36.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:36.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:36.825 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:36.825 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:37.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.497/180.0
2026-01-21T21:10:39.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.429/180.0
2026-01-21T21:10:39.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:39.847 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:39.847 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:39.847 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:41.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.399/180.0
2026-01-21T21:10:42.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:42.851 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:42.851 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:42.851 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:43.506 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:10:43.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.368/180.0
2026-01-21T21:10:45.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.338/180.0
2026-01-21T21:10:45.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:45.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:45.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:45.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:47.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.307/180.0
2026-01-21T21:10:48.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:48.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:10:48.871 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:48.871 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:10:49.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.277/180.0
2026-01-21T21:10:51.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.247/180.0
2026-01-21T21:10:51.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:51.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:10:51.891 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:51.891 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:53.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:10:53.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.216/180.0
2026-01-21T21:10:54.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:54.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:10:54.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:54.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:10:55.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.186/180.0
2026-01-21T21:10:57.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.156/180.0
2026-01-21T21:10:57.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:10:57.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:10:57.917 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:10:57.917 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:10:59.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.126/180.0
2026-01-21T21:11:00.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:00.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:11:00.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:00.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:01.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.096/180.0
2026-01-21T21:11:03.523 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:11:03.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.064/180.0
2026-01-21T21:11:03.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:03.943 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:03.943 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:03.943 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:05.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.035/180.0
2026-01-21T21:11:06.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:06.947 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:06.947 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:06.947 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:07.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.003/180.0
2026-01-21T21:11:09.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:09.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:09.968 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:09.968 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:09.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.973/180.0
2026-01-21T21:11:11.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.942/180.0
2026-01-21T21:11:12.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:12.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:12.971 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:12.971 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:13.531 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:11:14.029 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.912/180.0
2026-01-21T21:11:15.974 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:15.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:11:15.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:15.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:11:16.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.881/180.0
2026-01-21T21:11:18.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.852/180.0
2026-01-21T21:11:18.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:18.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:11:18.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:18.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:20.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.82/180.0
2026-01-21T21:11:22.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:22.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:22.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:22.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:22.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.79/180.0
2026-01-21T21:11:23.538 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:11:23.557 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:10:29.842522
2026-01-21T21:11:23.557 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:10:29.842522
2026-01-21T21:11:23.557 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:11:23.557 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:11:23.557 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:11:23.557 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:11:23&start_after=2026-01-20T19:11:23&end_after=2026-01-21T19:11:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:11:23.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.682 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.683 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.685 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:11:23.686 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:11:23.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:11:23.691 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:11:23.693 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.694 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.695 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:11:23.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:11:23.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:11:23.698 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:11:23.698 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:11:23.698 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:11:23.698 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:11:23.698 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 540.301394
2026-01-21T21:11:23.699 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:11:24.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.76/180.0
2026-01-21T21:11:25.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:25.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:25.022 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:25.022 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:25.701 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:11:25.702 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:11:25.702 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:11:25.702507    Obs time: 2026-01-21 19:20:24
2026-01-21T21:11:25.702 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:58.297493
2026-01-21T21:11:25.702 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  538
2026-01-21T21:11:25.702 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:11:26.212 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.729/180.0
2026-01-21T21:11:28.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:28.044 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:11:28.044 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:28.044 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:11:28.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.7/180.0
2026-01-21T21:11:30.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.668/180.0
2026-01-21T21:11:31.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:31.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:11:31.048 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:31.048 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:32.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.638/180.0
2026-01-21T21:11:32.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:11:34.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:34.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:11:34.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:34.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:11:34.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.608/180.0
2026-01-21T21:11:36.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.577/180.0
2026-01-21T21:11:37.071 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:37.072 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:11:37.072 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:37.072 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:38.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.547/180.0
2026-01-21T21:11:40.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:40.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:40.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:40.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:40.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.479/180.0
2026-01-21T21:11:42.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.448/180.0
2026-01-21T21:11:42.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:11:43.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:43.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:11:43.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:43.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:11:44.523 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.418/180.0
2026-01-21T21:11:46.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:46.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:11:46.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:46.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:46.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.388/180.0
2026-01-21T21:11:48.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.357/180.0
2026-01-21T21:11:49.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:49.118 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:49.118 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:49.118 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:50.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.327/180.0
2026-01-21T21:11:52.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:52.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:52.138 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:52.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:52.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.296/180.0
2026-01-21T21:11:52.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:11:54.675 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.266/180.0
2026-01-21T21:11:55.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:55.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:55.142 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:55.142 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:56.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.235/180.0
2026-01-21T21:11:58.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:11:58.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:11:58.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:11:58.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:11:58.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.207/180.0
2026-01-21T21:12:00.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.175/180.0
2026-01-21T21:12:01.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:01.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:01.165 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:01.165 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:02.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:12:02.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.107/180.0
2026-01-21T21:12:04.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:04.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:04.167 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:04.167 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:04.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.076/180.0
2026-01-21T21:12:06.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.047/180.0
2026-01-21T21:12:07.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:07.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:07.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:07.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:08.963 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.98/180.0
2026-01-21T21:12:10.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:10.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:10.194 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:10.194 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:10.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.947/180.0
2026-01-21T21:12:12.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:12:13.024 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.917/180.0
2026-01-21T21:12:13.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:13.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:13.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:13.217 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:15.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.887/180.0
2026-01-21T21:12:16.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:16.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:16.221 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:16.221 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:17.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.856/180.0
2026-01-21T21:12:19.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.825/180.0
2026-01-21T21:12:19.224 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:19.244 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:19.244 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:19.244 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:21.146 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.796/180.0
2026-01-21T21:12:22.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:22.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:22.267 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:22.267 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:22.749 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:12:22.749 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:11:30.045630
2026-01-21T21:12:22.750 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:11:30.045630
2026-01-21T21:12:22.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:12:22.750 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:12:22.750 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:12:22.750 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:12:22&start_after=2026-01-20T19:12:22&end_after=2026-01-21T19:12:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:12:22.963 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.963 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.966 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:12:22.968 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.968 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:12:22.969 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:12:22.972 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:12:22.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.975 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.975 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:12:22.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:12:22.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:12:22.978 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:12:22.979 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:12:22.979 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:12:22.979 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:12:22.979 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 481.020866
2026-01-21T21:12:22.979 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:12:23.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.765/180.0
2026-01-21T21:12:24.981 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:12:24.981 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:12:24.982 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:12:24.982013    Obs time: 2026-01-21 19:20:24
2026-01-21T21:12:24.982 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:59.017987
2026-01-21T21:12:24.982 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  479
2026-01-21T21:12:24.982 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:12:25.207 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.734/180.0
2026-01-21T21:12:25.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:25.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: 0.0
2026-01-21T21:12:25.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:25.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-21T21:12:27.237 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.703/180.0
2026-01-21T21:12:28.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:28.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0020000000000095497
2026-01-21T21:12:28.291 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:28.291 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:29.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.675/180.0
2026-01-21T21:12:31.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:31.295 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:12:31.295 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:31.295 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:12:31.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.605/180.0
2026-01-21T21:12:31.988 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:12:33.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.575/180.0
2026-01-21T21:12:34.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:34.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:12:34.317 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:34.317 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:35.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.544/180.0
2026-01-21T21:12:37.320 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:37.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:37.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:37.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:37.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.514/180.0
2026-01-21T21:12:39.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.483/180.0
2026-01-21T21:12:40.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:40.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:40.362 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:40.362 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:41.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.453/180.0
2026-01-21T21:12:41.998 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:12:43.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:43.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:43.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:43.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:43.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.422/180.0
2026-01-21T21:12:45.549 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.392/180.0
2026-01-21T21:12:46.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:46.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:46.390 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:46.390 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:47.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.363/180.0
2026-01-21T21:12:49.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:49.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:49.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:49.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:49.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.332/180.0
2026-01-21T21:12:51.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.301/180.0
2026-01-21T21:12:52.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:12:52.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:52.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:52.413 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:52.413 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:53.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.272/180.0
2026-01-21T21:12:55.416 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:55.438 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:12:55.439 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:55.439 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:12:55.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.24/180.0
2026-01-21T21:12:57.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.172/180.0
2026-01-21T21:12:58.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:12:58.443 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:12:58.443 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:12:58.443 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:12:59.799 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.142/180.0
2026-01-21T21:13:01.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:01.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:13:01.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:01.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:01.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.111/180.0
2026-01-21T21:13:02.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:13:03.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.083/180.0
2026-01-21T21:13:04.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:04.467 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:13:04.467 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:04.467 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:13:05.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.05/180.0
2026-01-21T21:13:07.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:07.471 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:13:07.471 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:07.471 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:07.922 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.02/180.0
2026-01-21T21:13:09.952 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.988/180.0
2026-01-21T21:13:10.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:10.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:10.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:10.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:11.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.958/180.0
2026-01-21T21:13:12.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:13:13.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:13.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:13.519 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:13.519 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:14.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.928/180.0
2026-01-21T21:13:16.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.896/180.0
2026-01-21T21:13:16.523 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:16.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:16.536 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:16.536 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:18.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.828/180.0
2026-01-21T21:13:19.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:19.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:19.556 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:19.556 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:20.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.798/180.0
2026-01-21T21:13:22.040 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:13:22.062 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:12:30.247276
2026-01-21T21:13:22.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:12:30.247276
2026-01-21T21:13:22.062 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:13:22.063 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:13:22.063 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:13:22.064 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:13:22&start_after=2026-01-20T19:13:22&end_after=2026-01-21T19:13:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:13:22.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.767/180.0
2026-01-21T21:13:22.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.204 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:13:22.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:13:22.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:13:22.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:13:22.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:13:22.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:13:22.239 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:13:22.241 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:13:22.242 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:13:22.242 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:13:22.242 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:13:22.242 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 421.757745
2026-01-21T21:13:22.243 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:13:22.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:22.559 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:22.559 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:22.559 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:24.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:24.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:13:24.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:13:24.266 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:13:24.266470    Obs time: 2026-01-21 19:20:24
2026-01-21T21:13:24.266 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:59.733530
2026-01-21T21:13:24.266 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  419
2026-01-21T21:13:24.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:13:25.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:25.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:25.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:25.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:26.235 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:28.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:28.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:28.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:28.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:28.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:30.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:31.274 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:13:31.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:31.620 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:31.621 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:31.621 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:32.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:34.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:34.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:34.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:34.644 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:34.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:36.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:37.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:37.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:37.660 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:37.660 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:38.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:40.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:40.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:40.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:40.682 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:40.683 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:41.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:13:42.517 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:43.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:43.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:43.688 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:43.688 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:44.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:46.581 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 3/4 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:13:46.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:13:46.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:13:46.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:13:46.711 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:13:46.737 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:13:46.738 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:13:46.744 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:13:49.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:13:49.715 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 4
2026-01-21T21:13:49.715 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 4: 4
2026-01-21T21:13:49.715 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:13:49.715 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:13:49.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:13:49.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:13:49.716 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:13:49.716 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:13:49.716 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:13:49.717 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:13:49.732 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:13:49.735 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:13:49.736 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-21T21:13:49.736 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-21T21:13:49.736 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-21T21:13:49.776 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-21T21:13:50.796 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-21T21:13:51.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:13:51.817 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-21T21:13:52.837 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-21T21:13:53.858 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 5
2026-01-21T21:13:54.879 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 6
2026-01-21T21:13:55.976 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-21T21:13:56.978 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:13:57.029 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T21:13:58.030 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:13:58.032 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.5
2026-01-21T21:13:58.032 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:13:23
2026-01-21T21:13:58.032 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:13:23
2026-01-21T21:13:58.033 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-21T21:13:58.033 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0915551181102362
2026-01-21T21:13:58.035 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-21T21:13:58.036 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:13:58.036 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:13:58.036 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:13:58.082 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T21:13:59.083 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:13:59.083 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:13:59.084 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:14:00.151 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:14:01.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:14:02.173 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='04:37:19.58', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-08:46:35.95', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025aarn', comment='The object name')]
2026-01-21T21:14:02.174 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:14:02.174 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:14:02.174 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:14:02.175 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:14:02.179 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:14:02.179 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:14:02.186 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:14:02.298 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:14:02.298 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:14:02.301 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769022842.301738
2026-01-21T21:14:02.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:14:02.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:14:03.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:03.196 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:03.196 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:03.196 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:06.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:06.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:06.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:06.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:07.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.599/180.0
2026-01-21T21:14:09.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:09.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:09.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:09.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:09.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.56/180.0
2026-01-21T21:14:11.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:14:11.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.53/180.0
2026-01-21T21:14:12.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:12.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:12.245 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:12.245 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:13.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.498/180.0
2026-01-21T21:14:15.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:15.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:15.249 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:15.249 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:15.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.469/180.0
2026-01-21T21:14:17.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.439/180.0
2026-01-21T21:14:18.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:18.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:18.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:18.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:19.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.408/180.0
2026-01-21T21:14:21.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:21.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:21.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:21.275 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:21.329 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:14:21.330 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:13:30.446201
2026-01-21T21:14:21.330 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:13:30.446201
2026-01-21T21:14:21.330 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:14:21.330 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:14:21.331 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:14:21.331 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:14:21&start_after=2026-01-20T19:14:21&end_after=2026-01-21T19:14:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:14:21.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.467 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.469 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:14:21.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:14:21.472 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:14:21.475 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:14:21.476 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.478 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.479 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:14:21.479 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:14:21.481 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:14:21.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:14:21.482 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:14:21.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:14:21.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:14:21.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 362.517581
2026-01-21T21:14:21.483 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:14:21.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.376/180.0
2026-01-21T21:14:23.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:14:23.486 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:14:23.486 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:14:23.486475    Obs time: 2026-01-21 19:20:24
2026-01-21T21:14:23.486 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:00.513525
2026-01-21T21:14:23.486 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  360
2026-01-21T21:14:23.486 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:14:23.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.348/180.0
2026-01-21T21:14:24.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:24.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:24.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:24.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:26.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.315/180.0
2026-01-21T21:14:27.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:27.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:27.297 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:27.297 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:28.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.285/180.0
2026-01-21T21:14:30.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.254/180.0
2026-01-21T21:14:30.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:30.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:30.318 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:30.318 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:30.491 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:14:32.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.225/180.0
2026-01-21T21:14:33.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:33.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:33.322 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:33.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:34.143 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.194/180.0
2026-01-21T21:14:36.173 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.164/180.0
2026-01-21T21:14:36.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:36.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:36.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:36.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:38.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.133/180.0
2026-01-21T21:14:39.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:39.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:39.346 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:39.346 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:40.234 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.103/180.0
2026-01-21T21:14:40.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:14:42.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.072/180.0
2026-01-21T21:14:42.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:42.371 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:42.371 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:42.371 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:44.295 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.042/180.0
2026-01-21T21:14:45.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:45.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:45.376 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:45.376 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:46.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.011/180.0
2026-01-21T21:14:48.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.981/180.0
2026-01-21T21:14:48.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:48.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:48.395 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:48.395 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:50.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.951/180.0
2026-01-21T21:14:50.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:14:51.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:51.398 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:51.398 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:51.398 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:52.416 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.92/180.0
2026-01-21T21:14:54.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:54.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:54.421 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:54.421 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:54.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.89/180.0
2026-01-21T21:14:56.477 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.859/180.0
2026-01-21T21:14:57.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:14:57.423 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:14:57.423 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:14:57.423 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:14:58.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.831/180.0
2026-01-21T21:15:00.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:00.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:00.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:00.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:00.520 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:15:00.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.8/180.0
2026-01-21T21:15:02.569 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.768/180.0
2026-01-21T21:15:03.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:03.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:03.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:03.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:04.599 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.738/180.0
2026-01-21T21:15:06.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:06.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:06.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:06.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:06.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.707/180.0
2026-01-21T21:15:08.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.677/180.0
2026-01-21T21:15:09.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:09.488 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:09.488 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:09.488 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:10.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:15:10.690 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.646/180.0
2026-01-21T21:15:12.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:12.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:15:12.492 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:12.492 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:15:12.721 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.616/180.0
2026-01-21T21:15:14.751 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.585/180.0
2026-01-21T21:15:15.495 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:15.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:15:15.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:15.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:16.782 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.555/180.0
2026-01-21T21:15:18.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:18.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:18.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:18.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:18.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.525/180.0
2026-01-21T21:15:20.536 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:15:20.552 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:14:30.645501
2026-01-21T21:15:20.552 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:14:30.645501
2026-01-21T21:15:20.552 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:15:20.552 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:15:20.552 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:15:20.552 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:15:20&start_after=2026-01-20T19:15:20&end_after=2026-01-21T19:15:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:15:20.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.789 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:15:20.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:15:20.794 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:15:20.794 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:15:20.794 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:15:20.794 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:15:20.794 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 303.205184
2026-01-21T21:15:20.795 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:15:20.842 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.496/180.0
2026-01-21T21:15:21.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:21.522 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:21.522 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:21.522 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:22.797 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:15:22.798 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:15:22.798 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:15:22.798950    Obs time: 2026-01-21 19:20:24
2026-01-21T21:15:22.798 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:01.201050
2026-01-21T21:15:22.799 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  301
2026-01-21T21:15:22.799 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:15:22.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.464/180.0
2026-01-21T21:15:24.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:24.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:24.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:24.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:24.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.433/180.0
2026-01-21T21:15:26.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.404/180.0
2026-01-21T21:15:27.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:27.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:27.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:27.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:28.964 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.372/180.0
2026-01-21T21:15:29.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:15:30.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:30.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:30.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:30.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:30.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.343/180.0
2026-01-21T21:15:33.025 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.312/180.0
2026-01-21T21:15:33.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:33.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:15:33.577 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:33.577 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:15:35.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.281/180.0
2026-01-21T21:15:36.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:36.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:15:36.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:36.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:37.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.251/180.0
2026-01-21T21:15:39.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.22/180.0
2026-01-21T21:15:39.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:39.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:39.602 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:39.602 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:39.816 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:15:41.147 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.192/180.0
2026-01-21T21:15:42.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:42.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:15:42.626 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:42.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:15:43.177 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.159/180.0
2026-01-21T21:15:45.207 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.131/180.0
2026-01-21T21:15:45.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:45.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:15:45.630 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:45.630 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:47.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.099/180.0
2026-01-21T21:15:48.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:48.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:48.649 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:48.649 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:49.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.068/180.0
2026-01-21T21:15:49.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:15:51.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.04/180.0
2026-01-21T21:15:51.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:51.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:15:51.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:51.653 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:15:53.329 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.008/180.0
2026-01-21T21:15:54.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:54.675 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:15:54.675 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:54.675 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:55.360 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.977/180.0
2026-01-21T21:15:57.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.947/180.0
2026-01-21T21:15:57.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:15:57.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:15:57.677 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:15:57.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:15:59.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.916/180.0
2026-01-21T21:15:59.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:16:00.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:00.699 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:16:00.699 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:00.699 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T21:16:01.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.888/180.0
2026-01-21T21:16:03.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.856/180.0
2026-01-21T21:16:03.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:03.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T21:16:03.703 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:03.703 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:05.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.825/180.0
2026-01-21T21:16:06.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:06.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:06.728 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:06.728 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:07.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.795/180.0
2026-01-21T21:16:09.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.764/180.0
2026-01-21T21:16:09.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:09.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:09.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:09.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:09.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:16:11.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.733/180.0
2026-01-21T21:16:12.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:12.735 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:12.735 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:12.735 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:13.633 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.703/180.0
2026-01-21T21:16:15.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.673/180.0
2026-01-21T21:16:15.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:15.739 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:15.739 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:15.739 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:17.694 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.642/180.0
2026-01-21T21:16:18.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:18.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:18.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:18.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:19.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.613/180.0
2026-01-21T21:16:19.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:16:19.876 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:15:30.846122
2026-01-21T21:16:19.876 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:15:30.846122
2026-01-21T21:16:19.876 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:16:19.876 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:16:19.876 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:16:19.876 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:16:19&start_after=2026-01-20T19:16:19&end_after=2026-01-21T19:16:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:16:20.105 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:16:20.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:16:20.122 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:16:20.122 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:16:20.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:16:20.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:16:20.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 243.877213
2026-01-21T21:16:20.123 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:16:21.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:21.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.583/180.0
2026-01-21T21:16:21.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:16:21.763 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:21.763 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:16:22.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:16:22.126 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:16:22.126 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:16:22.126426    Obs time: 2026-01-21 19:20:24
2026-01-21T21:16:22.126 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:01.873574
2026-01-21T21:16:22.126 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  241
2026-01-21T21:16:22.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:16:23.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.551/180.0
2026-01-21T21:16:24.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:24.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:16:24.784 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:24.784 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:25.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.52/180.0
2026-01-21T21:16:27.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:27.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:27.787 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:27.787 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:27.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.491/180.0
2026-01-21T21:16:29.132 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:16:29.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.46/180.0
2026-01-21T21:16:30.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:30.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:30.807 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:30.807 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:31.907 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.429/180.0
2026-01-21T21:16:33.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:33.811 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:33.811 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:33.811 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:33.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.4/180.0
2026-01-21T21:16:35.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.368/180.0
2026-01-21T21:16:36.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:36.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:36.837 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:36.837 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:37.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.338/180.0
2026-01-21T21:16:39.142 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:16:39.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:39.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: 0.0
2026-01-21T21:16:39.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:39.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-21T21:16:40.029 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.308/180.0
2026-01-21T21:16:42.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.278/180.0
2026-01-21T21:16:42.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:42.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0020000000000095497
2026-01-21T21:16:42.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:42.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:44.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.248/180.0
2026-01-21T21:16:45.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:45.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:45.866 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:45.866 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:46.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.216/180.0
2026-01-21T21:16:48.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.187/180.0
2026-01-21T21:16:48.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:48.887 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:48.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:48.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:49.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:16:50.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.155/180.0
2026-01-21T21:16:51.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:51.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:51.892 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:51.892 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:52.211 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.125/180.0
2026-01-21T21:16:54.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.095/180.0
2026-01-21T21:16:54.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:54.911 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:54.911 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:54.911 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:56.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.064/180.0
2026-01-21T21:16:57.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:16:57.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:16:57.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:16:57.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:16:58.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.034/180.0
2026-01-21T21:16:59.162 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:17:00.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.004/180.0
2026-01-21T21:17:00.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:00.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:17:00.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:00.939 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:17:02.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:03.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:03.943 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T21:17:03.943 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:03.943 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T21:17:04.394 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:06.424 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:06.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:06.962 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T21:17:06.962 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:06.962 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:17:08.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:09.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:17:09.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:09.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:17:09.966 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:09.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:17:10.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:12.516 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:12.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:12.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:17:12.989 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:12.989 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:17:14.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:15.992 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:15.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:17:15.993 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:15.993 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:17:16.576 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:18.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:18.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:18.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T21:17:18.997 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:18.997 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:17:19.197 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:17:19.198 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:16:31.050363
2026-01-21T21:17:19.198 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:16:31.050363
2026-01-21T21:17:19.198 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:17:19.198 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:17:19.199 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:17:19.199 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:17:19&start_after=2026-01-20T19:17:19&end_after=2026-01-21T19:17:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:17:19.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.322 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:17:19.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:17:19.336 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:17:19.336 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:17:19.336 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:17:19.336 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:17:19.336 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 184.663509
2026-01-21T21:17:19.337 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:17:20.637 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:21.339 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:17:21.357 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:17:21.357 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:17:21.357176    Obs time: 2026-01-21 19:20:24
2026-01-21T21:17:21.357 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:02.642824
2026-01-21T21:17:21.357 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  182
2026-01-21T21:17:21.357 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:17:21.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:21.999 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T21:17:21.999 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:21.999 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T21:17:22.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:24.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025aarn_phot_17229523_13451_13497.json , Iteration 1/1, Unit 4/4 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-21T21:17:25.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:17:25.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T21:17:25.024 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:17:25.024 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T21:17:25.158 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:17:25.158 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:17:25.160 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:17:28.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:17:28.025 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 4
2026-01-21T21:17:28.025 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:17:28.025 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:17:28.329 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:17:28.329 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script SN2025aarn_phot_17229523_13451_13497.json was run successfully
2026-01-21T21:17:28.329 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508276 COMPLETED 13497 reason
2026-01-21T21:17:28.329 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508276 COMPLETED 13497 reason
2026-01-21T21:17:28.329 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:17:28.329 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:17:28.329 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:17:28.329 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:17:28.329 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:17:28.329 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:17:28.363 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:17:31.332 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:17:31.332 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:17:33.334 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:17:33.334 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:17:33.334 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T21:17:33.334 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T21:17:33.334 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T21:17:33.337 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T21:17:33.337 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T19:19:07Z
2026-01-21T21:17:33.337 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T21:17:33.337 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T21:17:33.337 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T21:17:33.337 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T21:17:33.337 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T21:17:33.338 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:17:33.338 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:17:33.838 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:17:33.838 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T21:17:33.838 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:17:33.838 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:17:33.838 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:17:33.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:17:33.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:17:33.838 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:17:33.839 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T21:17:33.840 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 04:38:36.19284   Targ dec = -08:43:37.218
2026-01-21T21:17:33.840 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:17:33.840 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:17:33.840 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:17:33.847 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:17:33.847 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:17:33.847 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:17:33.847 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:17:34.888 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:17:36.890 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:17:36.890 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:17:36.890 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:17:37.342 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:17:37.342 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T21:17:37.342 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T21:17:37.342 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T21:17:37.342 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T21:17:37.342 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508276
2026-01-21T21:17:37.342 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T21:17:37.342 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T21:17:37.342 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T18:59:35', 'end': '2026-01-21T19:17:37', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1082.0', 'events': {}}} with config status ID 17508276
2026-01-21T21:17:37.503 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T21:17:37.503 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T18:58:44Z', 'guide_off', 'config_id 13497', 'config_status_id 17508276', 'update_OCS 17508276 ATTEMPTED', 'run_script setup_SN2025aarn_phot_17229523_13451_13497.json', 'run_script SN2025aarn_phot_17229523_13451_13497.json', 'update_OCS 17508276 COMPLETED 13497 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:19:07Z', 'run_script arc_flat_lamp_off.json'] at time 21:17:37
2026-01-21T21:17:38.372 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:17:48.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:17:58.393 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:18:08.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:18:18.412 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:18:18.430 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:17:31.249881
2026-01-21T21:18:18.430 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:17:31.249881
2026-01-21T21:18:18.431 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:18:18.431 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:18:18.431 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:18:18.431 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:18:18&start_after=2026-01-20T19:18:18&end_after=2026-01-21T19:18:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:18:18.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.553 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.555 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:18:18.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:18:18.565 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:18:18.566 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:18:18.566 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:18:18.566 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:18:18.566 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 125.433818
2026-01-21T21:18:18.566 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:18:20.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:18:20.569 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:18:20.570 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:18:20.570008    Obs time: 2026-01-21 19:20:24
2026-01-21T21:18:20.570 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:03.429992
2026-01-21T21:18:20.570 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  123
2026-01-21T21:18:20.570 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:18:27.577 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:18:37.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:18:47.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:18:57.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:19:07.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:19:17.623 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:19:17.641 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:18:31.448050
2026-01-21T21:19:17.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:18:31.448050
2026-01-21T21:19:17.642 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:19:17.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:19:17.642 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:19:17.642 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:19:17&start_after=2026-01-20T19:19:17&end_after=2026-01-21T19:19:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:19:17.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:19:17.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:19:17.796 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:19:17.796 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:19:17.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:19:17.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:19:17.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 66.203264
2026-01-21T21:19:17.797 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:19:19.799 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:19:19.800 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:19:19.800 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:19:19.800633    Obs time: 2026-01-21 19:20:24
2026-01-21T21:19:19.800 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:04.199367
2026-01-21T21:19:19.800 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  64
2026-01-21T21:19:19.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:19:26.808 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:19:36.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:19:46.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:19:56.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:20:06.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:20:16.857 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:20:16.858 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:19:31.661389
2026-01-21T21:20:16.858 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:19:31.661389
2026-01-21T21:20:16.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:20:16.858 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:20:16.858 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:20:16.858 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:20:16&start_after=2026-01-20T19:20:16&end_after=2026-01-21T19:20:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:20:16.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.979 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.981 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.985 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.985 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.988 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:20:16.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:20:16.995 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:20:16.995 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:20:16.995 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:20:16.995 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:20:16.995 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 7.00438
2026-01-21T21:20:16.996 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:20:18.997 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:20:18.997 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:20:18.998 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:20:18.997990    Obs time: 2026-01-21 19:20:24
2026-01-21T21:20:18.998 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:05.002010
2026-01-21T21:20:18.998 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  5
2026-01-21T21:20:18.998 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:20:26.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:20:36.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:20:46.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:20:56.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:21:06.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:21:16.050 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:21:16.070 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:20:31.859445
2026-01-21T21:21:16.070 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:20:31.859445
2026-01-21T21:21:16.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:21:16.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:21:16.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:21:16.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:21:16&start_after=2026-01-20T19:21:16&end_after=2026-01-21T19:21:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:21:16.185 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.187 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:21:16.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:21:16.202 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:21:16.203 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:21:16.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:21:16.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:20:24Z
2026-01-21T21:21:16.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -52.20316
2026-01-21T21:21:16.203 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:21:18.205 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:21:18.228 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:21:18.228 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:21:18.228252    Obs time: 2026-01-21 19:20:24
2026-01-21T21:21:18.228 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:05.771748
2026-01-21T21:21:18.228 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86345
2026-01-21T21:21:18.228 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:20:24Z', 'guide_off', 'config_id 13537', 'config_status_id 17508713', 'update_OCS 17508713 ATTEMPTED', 'run_script setup_std_star_HD60753_17229960_13491_13537.json', 'run_script std_star_HD60753_17229960_13491_13537.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17508713 COMPLETED 13537 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:28:40Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:21:18.228 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T21:21:18.228 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T21:21:18.228 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:21:18.228 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T21:21:18.228 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T21:21:18.228 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:21:18.229 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:21:18.229 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:21:18.229 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:21:18.229 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:21:21.232 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:21:21.232 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:21:23.235 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:21:23.235 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:21:23.235 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T19:20:24Z
2026-01-21T21:21:23.235 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T19:20:24Z
2026-01-21T21:21:23.235 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:21:23.235 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:21:23.235 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:21:23.235 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:21:23.235 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:21:23.235 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:21:25.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:21:26.238 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:21:26.238 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:21:28.240 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:21:28.240 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:21:28.240 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13537
2026-01-21T21:21:28.240 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13537
2026-01-21T21:21:28.240 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17508713
2026-01-21T21:21:28.240 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17508713
2026-01-21T21:21:28.240 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508713 ATTEMPTED
2026-01-21T21:21:28.240 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508713 ATTEMPTED
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:21:28.241 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:21:28.241 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:21:28.241 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 7.55759, 'targ_dec': -50.584213511367835, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '07:33:27.31', 'targ_dec': '-50:35:03.17', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_HD60753_17229960_13491_13537.json'}
2026-01-21T21:21:28.241 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:21:28.241 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508713
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T21:21:28.241 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17508713
2026-01-21T21:21:28.309 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T21:21:28.741 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:21:28.741 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_HD60753_17229960_13491_13537.json 1 times
2026-01-21T21:21:28.741 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:21:28.743 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T21:21:28.743 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T21:21:28.743 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T21:21:31.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:32.771 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:33.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:34.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:35.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:21:35.832 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:36.853 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:37.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:38.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:39.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:40.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:41.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:42.982 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:44.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:45.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:45.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:21:46.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:47.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:48.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:49.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:50.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:51.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:52.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:53.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:54.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:55.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:55.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:21:56.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:57.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:58.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:21:59.297 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:00.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:01.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:02.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:03.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:04.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:05.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:22:05.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:06.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:07.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:08.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:09.506 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:10.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:11.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:22:12.569 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T21:22:12.570 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  7.55815323063648 is close enough to target ra = 7.55759
2026-01-21T21:22:12.570 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -50.5832275804673 is close enough to target dec = -50.584213511367835
2026-01-21T21:22:12.570 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T21:22:12.570 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:22:12.570 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:22:12.570 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:22:12.570 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:22:12.570 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T21:22:12.570 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T21:22:12.581 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:22:12.581 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:22:12.766 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T21:22:13.786 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T21:22:14.806 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T21:22:15.284 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:22:15.303 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:21:32.073051
2026-01-21T21:22:15.303 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:21:32.073051
2026-01-21T21:22:15.303 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:22:15.303 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:22:15.303 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:22:15.303 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:22:15&start_after=2026-01-20T19:22:15&end_after=2026-01-21T19:22:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:22:15.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.458 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.459 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.462 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:22:15.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.467 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.469 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:22:15.470 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:22:15.470 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:22:15.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:22:15.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:22:15.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 397.529074
2026-01-21T21:22:15.471 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:22:15.826 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T21:22:16.846 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T21:22:17.473 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:22:17.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:22:17.492 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:22:17.492289    Obs time: 2026-01-21 19:28:53
2026-01-21T21:22:17.492 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:35.507711
2026-01-21T21:22:17.492 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  395
2026-01-21T21:22:17.492 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:22:17.867 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T21:22:18.888 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T21:22:19.908 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 8
2026-01-21T21:22:20.949 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:22:21.951 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:22:21.951 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:22:22.002 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:22:23.003 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:22:23.055 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:22:24.056 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:22:24.058 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.17
2026-01-21T21:22:24.058 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:21:25
2026-01-21T21:22:24.058 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:21:25
2026-01-21T21:22:24.058 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:22:24.058 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09165283464566927
2026-01-21T21:22:24.062 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T21:22:24.062 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T21:22:24.062 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T21:22:24.070 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:22:24.070 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:22:24.108 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:22:24.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:22:25.109 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:22:25.109 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:22:25.161 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:22:26.162 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:22:26.214 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:22:27.215 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:22:27.217 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.17
2026-01-21T21:22:27.217 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:21:25
2026-01-21T21:22:27.217 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:21:25
2026-01-21T21:22:27.217 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:22:27.217 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09165283464566927
2026-01-21T21:22:32.294 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T21:22:32.294 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:22:32.294 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:22:32.294 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:22:32.294 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:22:32.295 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:22:32.296 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:22:32.296 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:22:32.298 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:22:32.660 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:22:32.660 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:22:32.662 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023352.662543
2026-01-21T21:22:34.509 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:22:38.806 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T21:22:38.924 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:22:38.924 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:22:38.926 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:22:42.809 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T21:22:42.809 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T21:22:44.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:22:52.860 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T21:22:52.860 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:22:52.860 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 07:33:27.31 = 408109.65 arcseconds
2026-01-21T21:22:52.860 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -50:35:03.17 = -182103.17 arcseconds
2026-01-21T21:22:52.860 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-21T21:22:52.879 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:22:52.879 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.806756
2026-01-21T21:22:52.879 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:22:52.879 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (07:33:31.276, -50:34:57.404).
2026-01-21T21:22:52.879 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  07 33 31.276  -50 34 57.404 .
2026-01-21T21:22:52.879 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 07 33 31.276  -50 34 57.404 .
2026-01-21T21:22:52.879 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 408169.14
2026-01-21T21:22:52.880 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -182097.404
2026-01-21T21:22:53.091 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:22:54.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:22:58.108 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T21:22:58.108 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:22:58.108 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:22:58.108 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:22:58.109 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:22:58.109 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:22:58.111 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:22:58.111 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:22:58.114 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:22:58.781 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:22:58.781 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:22:58.783 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023378.7831821
2026-01-21T21:22:59.610 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:23:03.041 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:23:03.042 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:23:03.043 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:23:03.617 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T21:23:04.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:23:07.622 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T21:23:14.548 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:23:14.549 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:22:32.272699
2026-01-21T21:23:14.549 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:22:32.272699
2026-01-21T21:23:14.549 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:23:14.549 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:23:14.549 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:23:14.549 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:23:14&start_after=2026-01-20T19:23:14&end_after=2026-01-21T19:23:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:23:14.671 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.673 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.674 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.675 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.676 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.723 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.725 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.726 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.728 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.728 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:23:14.729 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.730 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.732 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:23:14.733 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:23:14.733 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:23:14.733 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:23:14.733 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:23:14.733 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 338.266274
2026-01-21T21:23:14.734 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:23:16.736 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:23:16.737 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:23:16.737 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:23:16.737547    Obs time: 2026-01-21 19:28:53
2026-01-21T21:23:16.737 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:36.262453
2026-01-21T21:23:16.737 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  336
2026-01-21T21:23:16.737 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:23:17.673 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T21:23:17.673 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:23:17.673 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 07:33:27.31 = 408109.65 arcseconds
2026-01-21T21:23:17.673 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -50:35:03.17 = -182103.17 arcseconds
2026-01-21T21:23:17.673 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-21T21:23:17.693 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:23:17.693 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.727236
2026-01-21T21:23:17.693 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:23:17.693 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (07:33:33.829, -50:35:45.094).
2026-01-21T21:23:17.693 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  07 33 33.829  -50 35 45.094 .
2026-01-21T21:23:17.693 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 07 33 33.829  -50 35 45.094 .
2026-01-21T21:23:17.693 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 408207.435
2026-01-21T21:23:17.693 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -182145.094
2026-01-21T21:23:17.905 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:23:22.911 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T21:23:22.911 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:23:22.911 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:23:22.911 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:23:22.911 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:23:22.911 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:23:22.913 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:23:22.913 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:23:22.915 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:23:23.379 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:23:23.379 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:23:23.381 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023403.3815186
2026-01-21T21:23:23.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:23:24.412 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:23:27.641 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:23:27.641 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:23:27.661 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:23:28.421 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T21:23:33.013 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] nudge_star_to_slit: 618.4561117243765, 571.8331703046913
2026-01-21T21:23:33.013 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] WCS_Dec_D, rotation_angle =  -50.0, -0.727236
2026-01-21T21:23:33.013 [INFO] [script_worker] [instrument.py] [go_nudge_star_to_slit()] Go West -2.4076204567530226
2026-01-21T21:23:33.219 [INFO] [script_worker] [instrument.py] [go_nudge_star_to_slit()] Not nudging star. Dec nudge (7.7494112486446) is  greater than 3
2026-01-21T21:23:33.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:23:35.229 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:23:35.229 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:23:35.229 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:23:35.229 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:23:35.229 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:23:35.231 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:23:35.231 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:23:35.233 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:23:35.586 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:23:35.586 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:23:35.588 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023415.5880177
2026-01-21T21:23:36.731 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:23:39.845 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:23:39.845 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:23:39.865 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:23:40.738 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T21:23:43.575 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2136  9902  14.3 to host 127.0.0.1 on port 12360
2026-01-21T21:23:43.575 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:23:43.575 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:23:43.780 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:23:46.578 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2136  9902  14.3
2026-01-21T21:23:46.578 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2136  9902  14.3
2026-01-21T21:23:48.580 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:23:53.790 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:24:03.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:24:13.810 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:24:13.811 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:23:32.473408
2026-01-21T21:24:13.811 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:23:32.473408
2026-01-21T21:24:13.811 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:24:13.812 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:24:13.812 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:24:13.812 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:24:13&start_after=2026-01-20T19:24:13&end_after=2026-01-21T19:24:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:24:13.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.929 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.930 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.933 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.935 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.939 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.940 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:24:13.941 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.941 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:24:13.944 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:24:13.944 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:24:13.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:24:13.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:24:13.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 279.055121
2026-01-21T21:24:13.964 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:24:15.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:24:15.986 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:24:15.986 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:24:15.986146    Obs time: 2026-01-21 19:28:53
2026-01-21T21:24:15.986 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:37.013854
2026-01-21T21:24:15.986 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  277
2026-01-21T21:24:15.986 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:24:22.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:24:27.619 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T21:24:27.620 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:24:27.620 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:24:30.621 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T21:24:30.621 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T21:24:32.623 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:24:32.623 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:24:32.623 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:24:32.623 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:24:32.623 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:24:32.623 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:24:32.623 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:24:32.623 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:24:33.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:24:33.788 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:24:35.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:24:35.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:24:35.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:24:36.512 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:24:36.512 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_HD60753_17229960_13491_13537.json was run successfully
2026-01-21T21:24:36.512 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:24:36.512 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:24:36.512 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:24:36.512 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_HD60753_17229960_13491_13537.json
2026-01-21T21:24:36.512 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'HD60753', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '07:33:27.31', 'targ_dec': '-50:35:03.17', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 2500, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_HD60753_17229960_13491_13537.json'}
2026-01-21T21:24:36.512 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:24:36.512 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:24:37.013 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:24:37.013 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_HD60753_17229960_13491_13537.json 1 times
2026-01-21T21:24:37.013 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-21T21:24:37.013 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:24:37.013 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:24:37.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:24:37.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:24:37.013 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:24:37.013 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:24:37.013 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:24:37.013 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:24:37.024 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:24:37.025 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:24:37.025 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T21:24:37.025 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:24:37.025 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:24:37.065 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:24:38.067 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T21:24:38.067 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T21:24:38.067 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:24:38.067 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:24:38.156 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:24:39.157 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:24:39.209 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:24:40.210 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:24:40.211 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.44
2026-01-21T21:24:40.211 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:23:35
2026-01-21T21:24:40.211 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:23:35
2026-01-21T21:24:40.211 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:24:40.211 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0914891338582677
2026-01-21T21:24:40.214 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T21:24:40.214 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:24:40.214 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:24:41.296 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:24:43.012 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:24:43.313 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='07:33:27.31', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-50:35:03.17', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='HD60753', comment='The object name')]
2026-01-21T21:24:43.313 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:24:43.313 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:24:43.313 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:24:43.313 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:24:43.315 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:24:43.315 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:24:43.317 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:24:43.595 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:24:43.595 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:24:43.596 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023483.5969596
2026-01-21T21:24:43.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:24:43.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:24:44.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:24:44.334 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:24:44.334 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:24:44.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:24:47.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:24:47.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:24:47.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:24:47.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:24:48.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:24:50.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:24:50.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:24:50.361 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:24:50.361 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:24:51.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:24:53.021 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:24:53.260 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:24:53.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:24:53.384 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:24:53.384 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:24:53.384 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:24:55.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:24:56.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:24:56.386 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:24:56.386 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:24:56.386 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:24:57.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:24:59.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:24:59.407 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:24:59.407 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:24:59.407 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:24:59.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:25:01.633 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:25:02.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:25:02.411 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:25:02.411 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:25:02.411 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:25:03.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:25:03.667 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:25:05.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:25:05.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:25:05.430 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:25:05.430 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:25:05.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:25:07.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:25:08.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:25:08.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:25:08.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:25:08.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:25:09.883 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:25:09.883 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:25:09.901 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:25:09.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 1/2 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T21:25:11.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:25:11.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-21T21:25:11.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-21T21:25:11.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:25:11.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:25:11.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:25:11.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:25:11.987 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:25:11.987 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:25:11.987 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:25:11.988 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:25:11.997 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:25:11.998 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:25:11.998 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T21:25:11.999 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:25:11.999 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:25:12.072 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:25:13.037 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:25:13.038 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:24:32.674843
2026-01-21T21:25:13.038 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:24:32.674843
2026-01-21T21:25:13.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:25:13.038 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:25:13.038 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:25:13.038 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:25:13&start_after=2026-01-20T19:25:13&end_after=2026-01-21T19:25:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:25:13.073 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T21:25:13.073 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T21:25:13.073 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:25:13.073 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:25:13.125 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:25:13.187 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:25:13.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:25:13.204 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:25:13.204 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:25:13.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:25:13.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:25:13.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 219.795599
2026-01-21T21:25:13.205 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:25:14.175 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:25:14.216 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:25:15.207 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:25:15.208 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:25:15.208 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:25:15.208405    Obs time: 2026-01-21 19:28:53
2026-01-21T21:25:15.208 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:37.791595
2026-01-21T21:25:15.208 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  217
2026-01-21T21:25:15.208 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:25:15.217 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:25:15.218 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.1
2026-01-21T21:25:15.218 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:24:07
2026-01-21T21:25:15.218 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:24:07
2026-01-21T21:25:15.218 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:25:15.218 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09169527559055116
2026-01-21T21:25:15.222 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T21:25:15.222 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-21T21:25:15.222 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-21T21:25:16.259 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:25:18.282 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-21T21:25:18.282 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:25:18.282 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:25:18.282 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:25:18.283 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:25:18.284 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:25:18.284 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:25:18.286 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:25:18.684 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:25:18.684 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:25:18.685 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023518.685908
2026-01-21T21:25:18.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:25:18.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:25:19.284 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:25:19.300 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-21T21:25:19.300 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:25:19.300 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T21:25:22.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:25:22.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:25:22.323 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-21T21:25:22.323 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:25:22.323 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:25:23.967 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17229960_13491_13537.json , Iteration 1/1, Unit 2/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-21T21:25:24.947 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:25:24.947 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:25:24.949 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:25:25.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:25:25.969 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-21T21:25:25.969 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:25:25.969 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:25:26.562 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:25:26.562 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_HD60753_17229960_13491_13537.json was run successfully
2026-01-21T21:25:26.562 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T21:25:26.562 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T21:25:26.562 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T21:25:26.562 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T21:25:26.562 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T21:25:26.563 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:25:26.563 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:25:27.063 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:25:27.063 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T21:25:27.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:25:27.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:25:27.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:25:27.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:25:27.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:25:27.112 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:25:27.112 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T21:25:27.114 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 07:34:14.79576   Targ dec = -50:39:12.9384
2026-01-21T21:25:27.114 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:25:27.114 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:25:27.114 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:25:27.120 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:25:27.120 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:25:27.120 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:25:27.120 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:25:28.173 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:25:30.173 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:25:30.173 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:25:30.173 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:25:30.567 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:25:30.567 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T21:25:30.567 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508713 COMPLETED 13537 reason
2026-01-21T21:25:30.567 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508713 COMPLETED 13537 reason
2026-01-21T21:25:30.567 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:25:30.567 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:25:30.567 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:25:30.567 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:25:30.567 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:25:30.567 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:25:32.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:25:33.570 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:25:33.570 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:25:35.572 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:25:35.572 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:25:35.572 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T21:25:35.572 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T21:25:35.573 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T21:25:35.575 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T21:25:35.575 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T19:28:40Z
2026-01-21T21:25:35.575 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T21:25:35.575 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T21:25:35.575 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T21:25:35.575 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T21:25:35.575 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T21:25:35.575 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:25:35.576 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:25:36.076 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:25:36.076 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T21:25:36.076 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:25:36.076 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:25:36.076 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:25:36.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:25:36.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:25:36.076 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:25:36.076 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T21:25:36.096 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 07:34:14.96244   Targ dec = -50:39:12.6396
2026-01-21T21:25:36.096 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:25:36.096 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:25:36.096 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:25:36.103 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:25:36.103 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:25:36.103 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:25:36.103 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:25:37.362 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:25:39.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:25:39.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:25:39.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:25:39.580 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:25:39.580 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T21:25:39.580 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T21:25:39.580 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T21:25:39.580 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T21:25:39.580 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508713
2026-01-21T21:25:39.580 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T21:25:39.580 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T21:25:39.580 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T19:21:18', 'end': '2026-01-21T19:25:39', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '261.0', 'events': {}}} with config status ID 17508713
2026-01-21T21:25:39.743 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T21:25:39.743 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:20:24Z', 'guide_off', 'config_id 13537', 'config_status_id 17508713', 'update_OCS 17508713 ATTEMPTED', 'run_script setup_std_star_HD60753_17229960_13491_13537.json', 'run_script std_star_HD60753_17229960_13491_13537.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17508713 COMPLETED 13537 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:28:40Z', 'run_script arc_flat_lamp_off.json'] at time 21:25:39
2026-01-21T21:25:42.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:25:52.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:26:02.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:26:12.265 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:26:12.266 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:25:32.874058
2026-01-21T21:26:12.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:25:32.874058
2026-01-21T21:26:12.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:26:12.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:26:12.266 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:26:12.266 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:26:12&start_after=2026-01-20T19:26:12&end_after=2026-01-21T19:26:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:26:12.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.383 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.389 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:26:12.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:26:12.397 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:26:12.397 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:26:12.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:26:12.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:26:12.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 160.602723
2026-01-21T21:26:12.398 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:26:14.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:26:14.401 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:26:14.401 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:26:14.401275    Obs time: 2026-01-21 19:28:53
2026-01-21T21:26:14.401 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:38.598725
2026-01-21T21:26:14.401 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  158
2026-01-21T21:26:14.401 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:26:21.408 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:26:31.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:26:41.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:26:51.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:27:01.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:27:11.461 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:27:11.482 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:26:33.073503
2026-01-21T21:27:11.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:26:33.073503
2026-01-21T21:27:11.482 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:27:11.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:27:11.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:27:11.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:27:11&start_after=2026-01-20T19:27:11&end_after=2026-01-21T19:27:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:27:11.602 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.604 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.604 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.606 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.608 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.609 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.613 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:27:11.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.616 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:27:11.618 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:27:11.618 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:27:11.618 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:27:11.618 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:27:11.618 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 101.381543
2026-01-21T21:27:11.620 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:27:13.622 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:27:13.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:27:13.639 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:27:13.639037    Obs time: 2026-01-21 19:28:53
2026-01-21T21:27:13.639 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:39.360963
2026-01-21T21:27:13.639 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  99
2026-01-21T21:27:13.639 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:27:20.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:27:30.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:27:40.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:27:50.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:28:00.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:28:10.698 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:28:10.699 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:27:33.272820
2026-01-21T21:28:10.699 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:27:33.272820
2026-01-21T21:28:10.699 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:28:10.699 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:28:10.699 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:28:10.699 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:28:10&start_after=2026-01-20T19:28:10&end_after=2026-01-21T19:28:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:28:10.849 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.853 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.860 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.863 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.865 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.866 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.867 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:28:10.867 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.868 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.870 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:28:10.871 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:28:10.871 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:28:10.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:28:10.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:28:10.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 42.128078
2026-01-21T21:28:10.872 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:28:12.874 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:28:12.875 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:28:12.875 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:28:12.875706    Obs time: 2026-01-21 19:28:53
2026-01-21T21:28:12.875 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:40.124294
2026-01-21T21:28:12.875 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  40
2026-01-21T21:28:12.875 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:28:19.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:28:29.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:28:39.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:28:49.914 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:28:59.925 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:29:09.935 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:29:09.955 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:28:33.480805
2026-01-21T21:29:09.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:28:33.480805
2026-01-21T21:29:09.955 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:29:09.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:29:09.956 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:29:09.956 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:29:09&start_after=2026-01-20T19:29:09&end_after=2026-01-21T19:29:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:29:10.076 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.078 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.078 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.079 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.081 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.081 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.082 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.085 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.086 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.088 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.088 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:29:10.089 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.090 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.091 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:29:10.092 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:29:10.093 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:29:10.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:29:10.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:29:10.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -17.09322
2026-01-21T21:29:10.094 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:29:12.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:29:12.117 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:29:12.118 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:29:12.117990    Obs time: 2026-01-21 19:28:53
2026-01-21T21:29:12.118 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:40.882010
2026-01-21T21:29:12.118 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86380
2026-01-21T21:29:12.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:28:53Z', 'guide_off', 'config_id 13545', 'config_status_id 17508806', 'update_OCS 17508806 ATTEMPTED', 'run_script setup_AT_2026ayt_17230053_13499_13545.json', 'run_script AT_2026ayt_17230053_13499_13545.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17508806 COMPLETED 13545 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:50:16Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:29:12.118 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T21:29:12.118 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T21:29:12.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:29:12.118 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T21:29:12.118 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T21:29:12.118 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:29:12.119 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:29:12.119 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:29:12.119 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:29:12.119 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:29:15.122 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:29:15.122 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:29:17.124 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:29:17.124 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:29:17.124 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T19:28:53Z
2026-01-21T21:29:17.124 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T19:28:53Z
2026-01-21T21:29:17.124 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:29:17.124 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:29:17.125 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:29:17.125 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:29:17.125 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:29:17.125 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:29:19.125 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:29:20.128 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:29:20.128 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13545
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13545
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17508806
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17508806
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508806 ATTEMPTED
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508806 ATTEMPTED
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 9.45647, 'targ_dec': -32.0086, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_AT_2026ayt_17230053_13499_13545.json'}
2026-01-21T21:29:22.129 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:29:22.129 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508806
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T21:29:22.129 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17508806
2026-01-21T21:29:22.200 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T21:29:22.630 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:29:22.630 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_AT_2026ayt_17230053_13499_13545.json 1 times
2026-01-21T21:29:22.630 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:29:22.632 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T21:29:22.632 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T21:29:22.632 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T21:29:25.658 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:26.680 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:27.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:28.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:29.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:29:29.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:30.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:31.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T21:29:32.800 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:29:33.819 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:29:34.842 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:29:35.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T21:29:35.858 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  9.45688119999569 is close enough to target ra = 9.45647
2026-01-21T21:29:35.859 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -32.0072685341173 is close enough to target dec = -32.0086
2026-01-21T21:29:35.859 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T21:29:35.859 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:29:35.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:29:35.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:29:35.859 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:29:35.859 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T21:29:35.859 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T21:29:35.869 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:29:35.870 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:29:35.916 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:29:36.917 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:29:36.917 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:29:36.969 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:29:37.970 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:29:38.022 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:29:39.024 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:29:39.025 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.05
2026-01-21T21:29:39.025 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:28:56
2026-01-21T21:29:39.025 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:28:56
2026-01-21T21:29:39.025 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:29:39.026 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09172559055118108
2026-01-21T21:29:39.028 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T21:29:39.028 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T21:29:39.028 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T21:29:39.038 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:29:39.038 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:29:39.112 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:29:39.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:29:40.113 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:29:40.113 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:29:40.278 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:29:41.279 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:29:41.331 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:29:42.332 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:29:42.334 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.05
2026-01-21T21:29:42.334 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:28:56
2026-01-21T21:29:42.334 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:28:56
2026-01-21T21:29:42.334 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:29:42.334 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09172559055118108
2026-01-21T21:29:47.417 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T21:29:47.418 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:29:47.418 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:29:47.418 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:29:47.418 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:29:47.418 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:29:47.420 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:29:47.420 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:29:47.422 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:29:47.645 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:29:47.645 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:29:47.647 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023787.6471703
2026-01-21T21:29:49.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:29:52.908 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:29:52.908 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:29:52.910 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:29:52.926 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T21:29:56.931 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T21:29:56.931 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T21:29:59.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:30:06.982 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T21:30:06.982 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:30:06.982 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-21T21:30:06.982 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-21T21:30:06.982 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T21:30:07.001 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:30:07.001 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.684318
2026-01-21T21:30:07.001 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:30:07.002 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:25.578, -32:00:17.811).
2026-01-21T21:30:07.002 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 25.578  -32 00 17.811 .
2026-01-21T21:30:07.002 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 25.578  -32 00 17.811 .
2026-01-21T21:30:07.002 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510683.67000000004
2026-01-21T21:30:07.002 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115217.811
2026-01-21T21:30:07.212 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:30:09.174 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:30:09.174 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:29:33.678363
2026-01-21T21:30:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:29:33.678363
2026-01-21T21:30:09.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:30:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:30:09.175 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:30:09.175 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:30:09&start_after=2026-01-20T19:30:09&end_after=2026-01-21T19:30:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:30:09.297 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.298 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.300 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.301 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.302 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.305 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.309 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:30:09.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.312 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:30:09.315 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:30:09.315 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:30:09.315 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:30:09.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:30:09.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:30:09.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1206.684722
2026-01-21T21:30:09.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T21:30:12.236 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T21:30:12.236 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:30:12.236 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:30:12.236 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:30:12.236 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:30:12.236 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:30:12.238 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:30:12.238 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:30:12.240 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:30:12.760 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:30:12.760 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:30:12.761 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023812.7618332
2026-01-21T21:30:13.737 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:30:17.021 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:30:17.021 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:30:17.023 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:30:17.744 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T21:30:18.324 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:30:21.749 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T21:30:28.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:30:31.800 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T21:30:31.800 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:30:31.800 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-21T21:30:31.800 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-21T21:30:31.800 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T21:30:31.820 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:30:31.820 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.693751
2026-01-21T21:30:31.820 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:30:31.820 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:27.913, -31:57:49.620).
2026-01-21T21:30:31.820 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 27.913  -31 57 49.620 .
2026-01-21T21:30:31.820 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 27.913  -31 57 49.620 .
2026-01-21T21:30:31.820 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510718.695
2026-01-21T21:30:31.820 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115069.62
2026-01-21T21:30:32.032 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:30:37.038 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T21:30:37.038 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:30:37.038 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:30:37.038 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:30:37.038 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:30:37.038 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:30:37.040 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:30:37.040 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:30:37.042 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:30:37.408 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:30:37.408 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:30:37.409 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023837.4098914
2026-01-21T21:30:38.344 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:30:38.540 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:30:41.668 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:30:41.668 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:30:41.670 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:30:42.548 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T21:30:48.354 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:30:48.569 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:30:48.569 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:30:48.569 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:30:48.569 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:30:48.569 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:30:48.571 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:30:48.571 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:30:48.573 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:30:48.694 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:30:48.694 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:30:48.695 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023848.6958587
2026-01-21T21:30:50.071 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:30:52.954 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:30:52.954 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:30:52.956 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:30:53.077 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T21:30:58.392 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:31:01.034 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9 to host 127.0.0.1 on port 12360
2026-01-21T21:31:01.034 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:31:01.034 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:31:04.037 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9
2026-01-21T21:31:04.037 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2016  11836  13.9
2026-01-21T21:31:06.039 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:31:08.423 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:31:08.440 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:30:33.877116
2026-01-21T21:31:08.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:30:33.877116
2026-01-21T21:31:08.440 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:31:08.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:31:08.440 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:31:08.440 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:31:08&start_after=2026-01-20T19:31:08&end_after=2026-01-21T19:31:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:31:08.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:31:08.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:31:08.585 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:31:08.585 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:31:08.585 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1147.41392
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:31:08.586112    Obs time: 2026-01-21 19:50:16
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:07.413888
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1147
2026-01-21T21:31:08.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:31:17.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:31:27.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:31:37.615 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:31:45.049 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T21:31:45.049 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:31:45.049 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:31:47.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:31:48.052 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T21:31:48.052 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T21:31:50.054 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:31:50.054 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:31:50.054 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:31:50.054 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:31:50.054 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:31:50.054 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:31:50.054 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:31:50.054 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:31:51.132 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:31:53.134 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:31:53.134 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:31:53.134 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:31:53.390 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:31:53.390 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_AT_2026ayt_17230053_13499_13545.json was run successfully
2026-01-21T21:31:53.390 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:31:53.390 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:31:53.390 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:31:53.390 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script AT_2026ayt_17230053_13499_13545.json
2026-01-21T21:31:53.390 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 600000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'AT_2026ayt_17230053_13499_13545.json'}
2026-01-21T21:31:53.391 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:31:53.391 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:31:53.891 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:31:53.891 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script AT_2026ayt_17230053_13499_13545.json 1 times
2026-01-21T21:31:53.891 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-21T21:31:53.891 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:31:53.891 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:31:53.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:31:53.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:31:53.891 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:31:53.892 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:31:53.892 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:31:53.892 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:31:53.901 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:31:53.902 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:31:53.902 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T21:31:53.902 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:31:53.902 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:31:53.950 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:31:54.951 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T21:31:54.951 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T21:31:54.951 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:31:54.951 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:31:55.116 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:31:56.117 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:31:56.169 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:31:57.170 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:31:57.172 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.19
2026-01-21T21:31:57.172 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:31:05
2026-01-21T21:31:57.172 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:31:05
2026-01-21T21:31:57.172 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:31:57.172 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0916407086614173
2026-01-21T21:31:57.176 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T21:31:57.176 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:31:57.176 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:31:57.636 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:31:58.210 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:32:00.230 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T21:32:00.230 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:32:00.230 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:32:00.230 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:32:00.230 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:32:00.232 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:32:00.232 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:32:00.234 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:32:00.409 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:32:00.409 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:32:00.411 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769023920.4113305
2026-01-21T21:32:00.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:32:00.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:32:01.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:01.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:32:01.253 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:01.253 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:04.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:04.275 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:04.275 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:04.275 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:05.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 594.632/600.0
2026-01-21T21:32:07.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:07.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:07.278 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:07.278 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:07.645 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:32:07.646 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:31:34.077843
2026-01-21T21:32:07.646 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:31:34.077843
2026-01-21T21:32:07.646 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:32:07.646 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:32:07.647 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:32:07.647 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:32:07&start_after=2026-01-20T19:32:07&end_after=2026-01-21T19:32:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:32:07.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:32:07.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1088.212544
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:32:07.787489    Obs time: 2026-01-21 19:50:16
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:08.212511
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1088
2026-01-21T21:32:07.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:32:07.978 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 592.467/600.0
2026-01-21T21:32:10.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 590.433/600.0
2026-01-21T21:32:10.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:10.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:10.304 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:10.304 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:12.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 588.399/600.0
2026-01-21T21:32:13.307 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:13.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:13.308 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:13.308 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:14.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.252/600.0
2026-01-21T21:32:16.311 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:16.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.143/600.0
2026-01-21T21:32:16.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:16.329 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:16.329 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:16.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:32:18.374 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.096/600.0
2026-01-21T21:32:19.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:19.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:19.348 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:19.349 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:20.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.037/600.0
2026-01-21T21:32:22.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:22.371 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:32:22.371 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:22.371 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:32:22.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.016/600.0
2026-01-21T21:32:24.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 575.847/600.0
2026-01-21T21:32:25.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:25.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:32:25.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:25.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:26.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:32:26.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 573.673/600.0
2026-01-21T21:32:28.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:28.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:28.397 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:28.397 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:28.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 571.563/600.0
2026-01-21T21:32:31.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 569.468/600.0
2026-01-21T21:32:31.400 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:31.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:32:31.401 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:31.401 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:32:33.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 567.245/600.0
2026-01-21T21:32:34.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:34.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T21:32:34.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:34.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:32:35.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 565.049/600.0
2026-01-21T21:32:36.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:32:37.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:37.448 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:32:37.448 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:37.448 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:37.705 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 562.865/600.0
2026-01-21T21:32:39.827 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 560.706/600.0
2026-01-21T21:32:40.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:40.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:40.468 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:40.468 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:42.024 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 558.584/600.0
2026-01-21T21:32:43.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:43.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:32:43.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:43.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:32:44.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 556.389/600.0
2026-01-21T21:32:46.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 554.304/600.0
2026-01-21T21:32:46.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:46.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:32:46.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:46.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:32:46.822 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:32:48.464 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 552.106/600.0
2026-01-21T21:32:49.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:49.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:32:49.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:49.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:50.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.949/600.0
2026-01-21T21:32:52.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:52.523 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:52.523 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:52.523 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:52.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.865/600.0
2026-01-21T21:32:54.678 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.816/600.0
2026-01-21T21:32:55.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:55.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:32:55.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:55.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:32:56.762 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.733/600.0
2026-01-21T21:32:56.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:32:58.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:32:58.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:32:58.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:32:58.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:32:58.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.65/600.0
2026-01-21T21:33:00.815 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 539.629/600.0
2026-01-21T21:33:01.548 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:01.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:33:01.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:01.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:02.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 537.596/600.0
2026-01-21T21:33:04.552 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:04.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:04.569 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:04.569 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:04.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 535.563/600.0
2026-01-21T21:33:06.838 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:33:06.858 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:32:34.277624
2026-01-21T21:33:06.858 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:32:34.277624
2026-01-21T21:33:06.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:33:06.858 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:33:06.858 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:33:06.858 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:33:06&start_after=2026-01-20T19:33:06&end_after=2026-01-21T19:33:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:33:07.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.008 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.010 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:33:07.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1028.980081
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:33:07.019951    Obs time: 2026-01-21 19:50:16
2026-01-21T21:33:07.019 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:08.980049
2026-01-21T21:33:07.020 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1028
2026-01-21T21:33:07.020 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:33:07.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 533.454/600.0
2026-01-21T21:33:07.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:07.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:33:07.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:07.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:33:09.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 531.307/600.0
2026-01-21T21:33:10.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:10.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:33:10.593 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:10.593 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:11.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 529.275/600.0
2026-01-21T21:33:13.306 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 527.14/600.0
2026-01-21T21:33:13.596 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:13.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:13.617 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:13.617 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:15.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 525.106/600.0
2026-01-21T21:33:16.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:33:16.620 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:16.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:16.621 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:16.621 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:17.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 522.823/600.0
2026-01-21T21:33:19.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:19.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:19.640 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:19.640 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:19.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 520.751/600.0
2026-01-21T21:33:21.928 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 518.693/600.0
2026-01-21T21:33:22.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:22.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:22.644 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:22.644 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:24.124 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 516.484/600.0
2026-01-21T21:33:25.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:25.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:25.667 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:25.667 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:26.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:33:26.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 514.287/600.0
2026-01-21T21:33:28.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 512.243/600.0
2026-01-21T21:33:28.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:28.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:33:28.691 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:28.691 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:33:30.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 510.221/600.0
2026-01-21T21:33:31.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:31.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:33:31.716 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:31.716 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:32.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 508.137/600.0
2026-01-21T21:33:34.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 506.092/600.0
2026-01-21T21:33:34.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:34.720 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:34.720 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:34.720 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:36.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:33:36.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 504.035/600.0
2026-01-21T21:33:37.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:37.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:33:37.741 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:37.741 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:33:38.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 501.876/600.0
2026-01-21T21:33:40.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 499.756/600.0
2026-01-21T21:33:40.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:40.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:33:40.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:40.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:42.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 497.734/600.0
2026-01-21T21:33:43.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:43.763 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:43.763 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:43.763 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:44.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 495.665/600.0
2026-01-21T21:33:46.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:33:46.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:46.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:46.783 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:46.783 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:47.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 493.605/600.0
2026-01-21T21:33:49.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 491.296/600.0
2026-01-21T21:33:49.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:49.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:33:49.808 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:49.808 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:33:51.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 489.263/600.0
2026-01-21T21:33:52.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:52.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:33:52.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:52.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:53.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 487.13/600.0
2026-01-21T21:33:55.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 484.983/600.0
2026-01-21T21:33:55.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:55.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:55.834 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:55.834 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:56.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:33:57.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 482.925/600.0
2026-01-21T21:33:58.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:33:58.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:33:58.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:33:58.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:33:59.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 480.867/600.0
2026-01-21T21:34:01.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 478.784/600.0
2026-01-21T21:34:01.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:01.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T21:34:01.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:01.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T21:34:03.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 476.615/600.0
2026-01-21T21:34:04.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:04.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T21:34:04.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:04.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:06.077 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:34:06.089 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 474.493/600.0
2026-01-21T21:34:06.097 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:33:34.476843
2026-01-21T21:34:06.097 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:33:34.476843
2026-01-21T21:34:06.097 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:34:06.097 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:34:06.097 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:34:06.097 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:34:06&start_after=2026-01-20T19:34:06&end_after=2026-01-21T19:34:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:34:06.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.230 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.230 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:34:06.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.233 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 969.763324
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:34:06.236707    Obs time: 2026-01-21 19:50:16
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:09.763293
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  969
2026-01-21T21:34:06.236 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:34:07.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:07.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:07.906 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:07.906 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:08.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 472.322/600.0
2026-01-21T21:34:10.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 470.288/600.0
2026-01-21T21:34:10.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:10.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:10.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:10.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:12.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 468.244/600.0
2026-01-21T21:34:13.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:13.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-21T21:34:13.933 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:13.933 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T21:34:14.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 466.086/600.0
2026-01-21T21:34:15.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:34:16.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 464.055/600.0
2026-01-21T21:34:16.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:16.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-21T21:34:16.934 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:16.934 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:18.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 462.021/600.0
2026-01-21T21:34:19.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:19.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:34:19.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:19.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:34:20.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 459.952/600.0
2026-01-21T21:34:22.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 457.805/600.0
2026-01-21T21:34:22.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:22.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:34:22.957 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:22.957 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:24.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 455.633/600.0
2026-01-21T21:34:25.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:34:25.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:25.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:25.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:25.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:27.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 453.398/600.0
2026-01-21T21:34:28.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:28.986 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:34:28.986 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:28.986 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:34:29.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 451.379/600.0
2026-01-21T21:34:31.527 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 449.067/600.0
2026-01-21T21:34:31.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:32.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:34:32.038 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:32.038 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:34:33.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 446.884/600.0
2026-01-21T21:34:35.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:35.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:34:35.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:35.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:35.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:34:35.729 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 444.739/600.0
2026-01-21T21:34:37.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 442.682/600.0
2026-01-21T21:34:38.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:38.063 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:38.063 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:38.063 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:39.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 440.599/600.0
2026-01-21T21:34:41.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:41.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:41.083 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:41.083 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:41.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 438.553/600.0
2026-01-21T21:34:43.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 436.508/600.0
2026-01-21T21:34:44.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:44.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:34:44.107 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:44.107 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:34:45.272 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:34:46.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 434.413/600.0
2026-01-21T21:34:47.111 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:47.156 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:34:47.156 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:47.156 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:48.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 432.393/600.0
2026-01-21T21:34:50.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 430.321/600.0
2026-01-21T21:34:50.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:50.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:50.174 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:50.174 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:52.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 428.289/600.0
2026-01-21T21:34:53.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:53.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:53.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:53.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:54.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 426.244/600.0
2026-01-21T21:34:55.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:34:56.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:56.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:56.197 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:56.197 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:34:56.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 423.971/600.0
2026-01-21T21:34:58.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 421.928/600.0
2026-01-21T21:34:59.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:34:59.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:34:59.201 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:34:59.201 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:00.813 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 419.63/600.0
2026-01-21T21:35:02.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:02.224 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:02.224 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:02.224 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:02.832 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 417.598/600.0
2026-01-21T21:35:05.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 415.58/600.0
2026-01-21T21:35:05.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:05.226 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:05.226 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:05.226 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:05.288 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:35:05.289 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:34:34.679693
2026-01-21T21:35:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:34:34.679693
2026-01-21T21:35:05.289 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:35:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:35:05.289 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:35:05.289 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:35:05&start_after=2026-01-20T19:35:05&end_after=2026-01-21T19:35:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:35:05.425 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:35:05.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 910.55558
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:35:05.444453    Obs time: 2026-01-21 19:50:16
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:10.555547
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  910
2026-01-21T21:35:05.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:35:07.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 413.31/600.0
2026-01-21T21:35:08.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:08.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:08.247 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:08.247 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:09.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 411.267/600.0
2026-01-21T21:35:11.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:11.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:35:11.250 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:11.250 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:35:11.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 409.093/600.0
2026-01-21T21:35:13.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 407.024/600.0
2026-01-21T21:35:14.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:14.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:35:14.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:14.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:14.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:35:15.541 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.953/600.0
2026-01-21T21:35:17.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:17.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:17.296 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:17.296 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:17.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 402.871/600.0
2026-01-21T21:35:19.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 400.825/600.0
2026-01-21T21:35:20.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:20.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:20.319 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:20.319 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:21.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 398.807/600.0
2026-01-21T21:35:23.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:23.323 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:35:23.323 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:23.323 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:35:23.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 396.624/600.0
2026-01-21T21:35:24.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:35:25.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 394.467/600.0
2026-01-21T21:35:26.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:26.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:35:26.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:26.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:28.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 392.422/600.0
2026-01-21T21:35:29.347 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:29.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:29.348 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:29.348 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:30.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 390.227/600.0
2026-01-21T21:35:32.351 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:32.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:32.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:32.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:32.439 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 388.057/600.0
2026-01-21T21:35:34.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:35:34.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 385.973/600.0
2026-01-21T21:35:35.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:35.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:35.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:35.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:36.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 383.84/600.0
2026-01-21T21:35:38.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:38.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:38.395 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:38.395 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:38.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 381.644/600.0
2026-01-21T21:35:40.857 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 379.601/600.0
2026-01-21T21:35:41.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:41.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:41.397 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:41.397 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:42.925 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 377.554/600.0
2026-01-21T21:35:44.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:44.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:44.419 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:44.419 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:44.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:35:44.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 375.486/600.0
2026-01-21T21:35:47.329 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.417/600.0
2026-01-21T21:35:47.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:47.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:35:47.422 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:47.422 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:35:49.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.084/600.0
2026-01-21T21:35:50.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:50.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:35:50.447 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:50.447 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:51.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 368.974/600.0
2026-01-21T21:35:53.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:53.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:53.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:53.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:53.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 366.944/600.0
2026-01-21T21:35:54.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:35:55.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 364.824/600.0
2026-01-21T21:35:56.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:56.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:56.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:56.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:57.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 362.777/600.0
2026-01-21T21:35:59.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:35:59.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:35:59.478 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:35:59.478 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:35:59.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 360.746/600.0
2026-01-21T21:36:01.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 358.728/600.0
2026-01-21T21:36:02.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:02.482 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:02.482 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:02.482 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:03.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 356.683/600.0
2026-01-21T21:36:04.500 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:36:04.500 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:35:34.880734
2026-01-21T21:36:04.500 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:35:34.880734
2026-01-21T21:36:04.501 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:36:04.501 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:36:04.501 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:36:04.501 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:36:04&start_after=2026-01-20T19:36:04&end_after=2026-01-21T19:36:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:36:04.630 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.633 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:36:04.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 851.350702
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:36:04.649330    Obs time: 2026-01-21 19:50:16
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:11.350670
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  851
2026-01-21T21:36:04.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:36:05.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:05.508 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:05.508 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:05.508 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:05.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 354.665/600.0
2026-01-21T21:36:07.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 352.621/600.0
2026-01-21T21:36:08.511 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:08.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:08.512 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:08.512 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:10.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 350.589/600.0
2026-01-21T21:36:11.515 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:11.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:11.537 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:11.537 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:12.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.293/600.0
2026-01-21T21:36:13.658 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:36:14.195 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.261/600.0
2026-01-21T21:36:14.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:14.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:36:14.541 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:14.541 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:36:16.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.216/600.0
2026-01-21T21:36:17.544 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:17.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:36:17.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:17.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:18.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.133/600.0
2026-01-21T21:36:20.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.075/600.0
2026-01-21T21:36:20.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:20.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:20.570 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:20.570 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:22.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 337.893/600.0
2026-01-21T21:36:23.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:23.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:23.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:23.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:23.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:36:24.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 335.849/600.0
2026-01-21T21:36:26.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:26.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:36:26.593 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:26.593 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:36:26.955 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 333.665/600.0
2026-01-21T21:36:28.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 331.456/600.0
2026-01-21T21:36:29.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:29.615 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:36:29.615 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:29.615 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:31.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 329.425/600.0
2026-01-21T21:36:32.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:32.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:32.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:32.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:33.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 327.381/600.0
2026-01-21T21:36:33.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:36:35.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 325.335/600.0
2026-01-21T21:36:35.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:35.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:36:35.643 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:35.643 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:36:37.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 323.291/600.0
2026-01-21T21:36:38.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:38.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:36:38.660 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:38.660 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:36:39.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 321.258/600.0
2026-01-21T21:36:41.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 319.227/600.0
2026-01-21T21:36:41.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:41.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:36:41.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:41.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:43.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 317.121/600.0
2026-01-21T21:36:43.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:36:44.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:44.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:44.681 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:44.681 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:45.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 314.899/600.0
2026-01-21T21:36:47.602 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 312.84/600.0
2026-01-21T21:36:47.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:47.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:36:47.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:47.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:36:49.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 310.81/600.0
2026-01-21T21:36:50.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:50.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:36:50.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:50.710 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:51.651 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 308.791/600.0
2026-01-21T21:36:53.694 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:36:53.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:53.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:53.733 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:53.733 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:53.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 306.76/600.0
2026-01-21T21:36:55.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 304.527/600.0
2026-01-21T21:36:56.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:56.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:56.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:56.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:36:57.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 302.509/600.0
2026-01-21T21:36:59.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:36:59.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:36:59.741 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:36:59.741 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:00.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 300.426/600.0
2026-01-21T21:37:02.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 298.37/600.0
2026-01-21T21:37:02.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:02.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:02.761 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:02.761 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:03.700 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:37:03.700 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:36:35.079910
2026-01-21T21:37:03.700 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:36:35.079910
2026-01-21T21:37:03.700 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:37:03.700 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:37:03.701 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:37:03.701 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:37:03&start_after=2026-01-20T19:37:03&end_after=2026-01-21T19:37:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:37:03.820 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.821 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.822 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.822 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.824 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.825 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.825 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.826 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.827 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:37:03.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:37:03.837 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 792.161849
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:37:03.838182    Obs time: 2026-01-21 19:50:16
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:12.161818
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  792
2026-01-21T21:37:03.838 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:37:04.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 296.164/600.0
2026-01-21T21:37:05.764 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:05.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:05.783 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:05.783 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:06.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.981/600.0
2026-01-21T21:37:08.557 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.925/600.0
2026-01-21T21:37:08.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:08.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:08.787 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:08.787 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:10.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.856/600.0
2026-01-21T21:37:11.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:11.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:11.812 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:11.812 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:12.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.76/600.0
2026-01-21T21:37:12.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:37:14.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:14.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:14.816 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:14.816 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:14.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 285.589/600.0
2026-01-21T21:37:17.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 283.533/600.0
2026-01-21T21:37:17.819 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:17.820 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:37:17.820 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:17.820 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:37:19.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 281.399/600.0
2026-01-21T21:37:20.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:20.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:37:20.821 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:20.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:21.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 279.266/600.0
2026-01-21T21:37:22.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:37:23.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 277.185/600.0
2026-01-21T21:37:23.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:23.823 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:23.823 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:23.823 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:25.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 275.003/600.0
2026-01-21T21:37:26.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:26.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:37:26.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:26.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:37:27.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 272.921/600.0
2026-01-21T21:37:29.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 270.738/600.0
2026-01-21T21:37:29.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:29.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:37:29.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:29.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:31.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 268.709/600.0
2026-01-21T21:37:32.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:32.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:37:32.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:32.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:32.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:33.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 266.625/600.0
2026-01-21T21:37:35.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 264.596/600.0
2026-01-21T21:37:35.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:35.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:35.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:35.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:37.867 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 262.575/600.0
2026-01-21T21:37:38.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:38.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:37:38.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:38.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:37:39.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 260.545/600.0
2026-01-21T21:37:41.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:41.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:37:41.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:41.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:42.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 258.501/600.0
2026-01-21T21:37:42.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:37:44.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 256.243/600.0
2026-01-21T21:37:44.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:44.940 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:44.940 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:44.940 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:46.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 254.213/600.0
2026-01-21T21:37:47.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:47.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:47.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:47.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:48.400 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 252.181/600.0
2026-01-21T21:37:50.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 250.011/600.0
2026-01-21T21:37:50.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:50.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:37:50.965 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:50.965 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:37:52.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 247.817/600.0
2026-01-21T21:37:52.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:37:53.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:53.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:37:53.968 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:53.968 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:54.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 245.659/600.0
2026-01-21T21:37:56.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 243.527/600.0
2026-01-21T21:37:56.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:56.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:56.993 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:56.993 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:37:58.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 241.472/600.0
2026-01-21T21:37:59.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:37:59.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:37:59.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:37:59.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:01.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 239.44/600.0
2026-01-21T21:38:02.894 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:38:02.912 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:37:35.281769
2026-01-21T21:38:02.912 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:37:35.281769
2026-01-21T21:38:02.912 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:38:02.912 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:38:02.912 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:38:02.912 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:38:02&start_after=2026-01-20T19:38:02&end_after=2026-01-21T19:38:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:38:03.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:03.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:03.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:03.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:03.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.037 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.042 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:38:03.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 732.951689
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:38:03.048343    Obs time: 2026-01-21 19:50:16
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:12.951657
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  732
2026-01-21T21:38:03.048 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:38:03.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 237.396/600.0
2026-01-21T21:38:05.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 235.353/600.0
2026-01-21T21:38:06.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:06.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:06.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:06.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:07.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 233.32/600.0
2026-01-21T21:38:09.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:09.031 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:09.031 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:09.031 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:09.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 231.012/600.0
2026-01-21T21:38:11.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 228.982/600.0
2026-01-21T21:38:12.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:12.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:12.035 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:12.035 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:12.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:38:13.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 226.965/600.0
2026-01-21T21:38:15.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:15.059 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:15.059 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:15.059 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:15.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 224.731/600.0
2026-01-21T21:38:17.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 222.701/600.0
2026-01-21T21:38:18.062 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:18.063 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:18.063 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:18.063 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:20.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 220.681/600.0
2026-01-21T21:38:21.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:21.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:21.085 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:21.085 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:22.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:38:22.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 218.413/600.0
2026-01-21T21:38:24.088 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:24.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:24.089 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:24.089 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:24.416 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 216.19/600.0
2026-01-21T21:38:26.611 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 213.995/600.0
2026-01-21T21:38:27.092 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:27.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:38:27.109 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:27.110 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:38:28.642 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 211.8/600.0
2026-01-21T21:38:30.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:30.111 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:38:30.111 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:30.111 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:30.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 209.77/600.0
2026-01-21T21:38:32.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:38:32.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 207.751/600.0
2026-01-21T21:38:33.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:33.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:33.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:33.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:34.961 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 205.481/600.0
2026-01-21T21:38:36.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:36.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:36.154 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:36.154 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:37.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 203.45/600.0
2026-01-21T21:38:39.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:39.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:38:39.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:39.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:38:39.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 201.255/600.0
2026-01-21T21:38:41.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 199.173/600.0
2026-01-21T21:38:42.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:38:42.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:42.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:38:42.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:42.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:43.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 197.142/600.0
2026-01-21T21:38:45.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:45.207 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:38:45.207 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:45.207 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:45.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 195.061/600.0
2026-01-21T21:38:47.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 192.917/600.0
2026-01-21T21:38:48.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:48.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:38:48.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:48.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:38:49.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 190.814/600.0
2026-01-21T21:38:51.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:51.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:38:51.231 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:51.231 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:38:51.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 188.655/600.0
2026-01-21T21:38:52.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:38:53.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 186.597/600.0
2026-01-21T21:38:54.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:54.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:38:54.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:54.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:38:55.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 184.541/600.0
2026-01-21T21:38:57.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:38:57.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-21T21:38:57.259 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:38:57.259 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T21:38:57.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 182.523/600.0
2026-01-21T21:39:00.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 180.493/600.0
2026-01-21T21:39:00.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:00.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-21T21:39:00.261 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:00.261 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:02.104 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:39:02.105 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:38:35.479818
2026-01-21T21:39:02.105 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:38:35.479818
2026-01-21T21:39:02.105 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:39:02.105 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:39:02.105 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:39:02.105 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:39:02&start_after=2026-01-20T19:39:02&end_after=2026-01-21T19:39:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:39:02.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 178.398/600.0
2026-01-21T21:39:02.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.226 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.230 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:39:02.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.241 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 673.756621
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:39:02.243411    Obs time: 2026-01-21 19:50:16
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:13.756589
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  673
2026-01-21T21:39:02.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:39:03.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:03.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:39:03.276 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:03.276 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:39:04.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 176.228/600.0
2026-01-21T21:39:06.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.16/600.0
2026-01-21T21:39:06.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:06.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:39:06.278 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:06.278 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:08.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.14/600.0
2026-01-21T21:39:09.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:09.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:09.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:09.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:10.484 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.11/600.0
2026-01-21T21:39:11.252 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:39:12.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:12.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:39:12.301 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:12.301 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:39:12.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.927/600.0
2026-01-21T21:39:14.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.884/600.0
2026-01-21T21:39:15.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:15.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:39:15.322 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:15.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:16.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 163.853/600.0
2026-01-21T21:39:18.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:18.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:18.326 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:18.326 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:18.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 161.834/600.0
2026-01-21T21:39:20.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 159.678/600.0
2026-01-21T21:39:21.263 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:39:21.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:21.347 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:21.347 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:21.347 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:22.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 157.47/600.0
2026-01-21T21:39:24.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:24.351 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:24.351 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:24.351 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:25.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 155.441/600.0
2026-01-21T21:39:27.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.271/600.0
2026-01-21T21:39:27.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:27.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:27.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:27.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:29.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.226/600.0
2026-01-21T21:39:30.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:30.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:39:30.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:30.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:39:31.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.207/600.0
2026-01-21T21:39:31.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:39:33.267 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.163/600.0
2026-01-21T21:39:33.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:33.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:39:33.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:33.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:35.298 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.144/600.0
2026-01-21T21:39:36.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:36.400 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:36.400 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:36.400 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:37.328 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.115/600.0
2026-01-21T21:39:39.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:39.402 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:39.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:39.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:39.523 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.083/600.0
2026-01-21T21:39:41.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:39:41.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.888/600.0
2026-01-21T21:39:42.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:42.423 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:42.423 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:42.423 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:43.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.733/600.0
2026-01-21T21:39:45.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:45.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:45.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:45.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:45.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 134.689/600.0
2026-01-21T21:39:47.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 132.658/600.0
2026-01-21T21:39:48.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:48.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:48.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:48.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:49.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 130.538/600.0
2026-01-21T21:39:51.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:39:51.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:51.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:51.454 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:51.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:51.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 128.508/600.0
2026-01-21T21:39:53.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 126.477/600.0
2026-01-21T21:39:54.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:54.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:54.477 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:54.477 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:56.033 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 124.447/600.0
2026-01-21T21:39:57.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:39:57.479 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:39:57.479 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:39:57.479 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:39:58.089 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 122.38/600.0
2026-01-21T21:40:00.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.322/600.0
2026-01-21T21:40:00.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:00.502 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:00.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:00.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:01.297 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:40:01.298 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:39:35.682362
2026-01-21T21:40:01.298 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:39:35.682362
2026-01-21T21:40:01.298 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:40:01.298 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:40:01.298 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:40:01.298 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:40:01&start_after=2026-01-20T19:40:01&end_after=2026-01-21T19:40:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:40:01.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.421 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.422 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.423 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.425 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.426 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.429 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:40:01.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 614.56253
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:40:01.437503    Obs time: 2026-01-21 19:50:16
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:14.562497
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  614
2026-01-21T21:40:01.437 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:40:02.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.293/600.0
2026-01-21T21:40:03.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:03.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:03.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:03.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:04.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.984/600.0
2026-01-21T21:40:06.489 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.954/600.0
2026-01-21T21:40:06.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:06.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:06.528 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:06.528 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:08.519 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.923/600.0
2026-01-21T21:40:09.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:09.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-21T21:40:09.532 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:09.532 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-21T21:40:10.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:40:10.550 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.893/600.0
2026-01-21T21:40:12.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:12.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00100000000003
2026-01-21T21:40:12.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:12.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:40:12.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.861/600.0
2026-01-21T21:40:14.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.795/600.0
2026-01-21T21:40:15.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:15.554 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:40:15.554 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:15.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:16.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.739/600.0
2026-01-21T21:40:18.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:18.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:18.580 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:18.580 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:18.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.669/600.0
2026-01-21T21:40:20.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:40:21.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.601/600.0
2026-01-21T21:40:21.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:21.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:21.598 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:21.598 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:23.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.255/600.0
2026-01-21T21:40:24.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:24.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:40:24.617 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:24.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:40:25.394 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.061/600.0
2026-01-21T21:40:27.412 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.018/600.0
2026-01-21T21:40:27.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:27.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:40:27.622 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:27.622 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:29.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.999/600.0
2026-01-21T21:40:30.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:40:30.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:30.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:30.649 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:30.649 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:31.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.968/600.0
2026-01-21T21:40:33.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.924/600.0
2026-01-21T21:40:33.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:33.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:40:33.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:33.653 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:40:35.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.893/600.0
2026-01-21T21:40:36.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:36.674 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:40:36.674 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:36.674 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:37.680 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.864/600.0
2026-01-21T21:40:39.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:39.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:39.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:39.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:39.710 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.732/600.0
2026-01-21T21:40:40.473 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:40:41.741 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.701/600.0
2026-01-21T21:40:42.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:42.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:42.703 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:42.703 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:43.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.672/600.0
2026-01-21T21:40:45.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:45.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:45.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:45.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:46.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.616/600.0
2026-01-21T21:40:48.199 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.37/600.0
2026-01-21T21:40:48.707 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:48.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:48.724 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:48.724 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:50.243 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.213/600.0
2026-01-21T21:40:50.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:40:51.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:51.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:51.728 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:51.728 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:52.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.169/600.0
2026-01-21T21:40:54.469 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.974/600.0
2026-01-21T21:40:54.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:54.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:54.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:54.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:56.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.943/600.0
2026-01-21T21:40:57.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:40:57.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:40:57.754 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:40:57.754 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:40:58.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.924/600.0
2026-01-21T21:41:00.491 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:41:00.511 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:40:35.881179
2026-01-21T21:41:00.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:40:35.881179
2026-01-21T21:41:00.511 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:41:00.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:41:00.512 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:41:00.512 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:41:00&start_after=2026-01-20T19:41:00&end_after=2026-01-21T19:41:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:41:00.549 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.895/600.0
2026-01-21T21:41:00.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:00.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:41:00.654 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:41:00.654 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:41:00.654 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:41:00.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:41:00.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:41:00.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 555.345362
2026-01-21T21:41:00.655 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:41:00.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:00.758 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:41:00.758 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:00.758 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:41:02.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.862/600.0
2026-01-21T21:41:02.657 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:41:02.675 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:41:02.675 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:41:02.675824    Obs time: 2026-01-21 19:50:16
2026-01-21T21:41:02.675 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:13.324176
2026-01-21T21:41:02.675 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  553
2026-01-21T21:41:02.675 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:41:03.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:03.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T21:41:03.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:03.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:41:04.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.769/600.0
2026-01-21T21:41:06.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:06.800 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:41:06.800 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:06.800 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:06.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 53.575/600.0
2026-01-21T21:41:08.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 51.533/600.0
2026-01-21T21:41:09.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:41:09.803 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:09.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:41:09.805 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:09.805 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:10.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 49.501/600.0
2026-01-21T21:41:12.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:12.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:41:12.827 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:12.827 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:41:13.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.433/600.0
2026-01-21T21:41:15.115 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.365/600.0
2026-01-21T21:41:15.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:15.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:41:15.831 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:15.831 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:17.233 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.297/600.0
2026-01-21T21:41:18.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:18.848 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:41:18.848 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:18.848 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:19.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.178/600.0
2026-01-21T21:41:19.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:41:21.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.97/600.0
2026-01-21T21:41:21.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:21.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:41:21.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:21.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:41:23.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.914/600.0
2026-01-21T21:41:24.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:24.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:41:24.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:24.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:41:25.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.883/600.0
2026-01-21T21:41:27.729 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.865/600.0
2026-01-21T21:41:27.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:27.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:41:27.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:27.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:29.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:41:29.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.682/600.0
2026-01-21T21:41:30.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:30.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:41:30.891 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:30.891 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:31.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.651/600.0
2026-01-21T21:41:33.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.621/600.0
2026-01-21T21:41:33.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:33.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:41:33.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:33.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:41:36.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.59/600.0
2026-01-21T21:41:36.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:36.916 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T21:41:36.916 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:36.916 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:41:38.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.408/600.0
2026-01-21T21:41:39.707 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:41:39.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:39.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:41:39.920 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:39.920 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:40.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.364/600.0
2026-01-21T21:41:42.108 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.334/600.0
2026-01-21T21:41:42.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:42.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:41:42.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:42.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:44.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.304/600.0
2026-01-21T21:41:45.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:45.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:41:45.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:45.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:41:46.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.286/600.0
2026-01-21T21:41:48.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.053/600.0
2026-01-21T21:41:48.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:48.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:41:48.966 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:48.966 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:49.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:41:50.686 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.034/600.0
2026-01-21T21:41:51.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:51.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:41:51.970 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:51.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:52.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.726/600.0
2026-01-21T21:41:54.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.697/600.0
2026-01-21T21:41:54.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:54.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:41:54.989 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:54.989 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:41:56.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.665/600.0
2026-01-21T21:41:57.992 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:41:57.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:41:57.993 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:41:57.993 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:41:58.947 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.634/600.0
2026-01-21T21:41:59.725 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:41:59.726 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:41:36.083478
2026-01-21T21:41:59.726 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:41:36.083478
2026-01-21T21:41:59.726 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:41:59.726 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:41:59.726 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:41:59.726 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:41:59&start_after=2026-01-20T19:41:59&end_after=2026-01-21T19:41:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:41:59.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:41:59.845 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:41:59.846 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 1 configurations
2026-01-21T21:41:59.846 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:41:59.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No schedules to run
2026-01-21T21:41:59.846 [WARNING] [Poll thread] [schedule_poller.py] [poll()] Next observation start time is not available
2026-01-21T21:41:59.846 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T21:42:00.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:01.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:01.013 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:01.013 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:01.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:03.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:04.016 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:04.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:04.017 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:04.017 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:05.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:07.020 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:07.040 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:07.040 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:07.040 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:07.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:08.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:42:09.517 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:10.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:10.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:10.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:10.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:11.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:13.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:13.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:42:13.064 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:13.064 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:42:13.578 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:15.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:16.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:16.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:42:16.116 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:16.116 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:17.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:18.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:42:19.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:19.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:19.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:19.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:19.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:21.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:22.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:22.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:42:22.137 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:22.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:42:23.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T21:42:24.079 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:42:24.080 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:42:24.082 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:42:25.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:42:25.822 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-21T21:42:25.822 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-21T21:42:25.822 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:42:25.822 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:42:25.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:42:25.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:42:25.822 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:42:25.822 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:42:25.822 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:42:25.822 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:42:25.833 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:42:25.834 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:42:25.834 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T21:42:25.834 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T21:42:25.834 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T21:42:26.023 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T21:42:27.043 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T21:42:28.064 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T21:42:28.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:42:29.084 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T21:42:30.105 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-21T21:42:31.145 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T21:42:32.146 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:42:32.311 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T21:42:33.312 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:42:33.313 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.84
2026-01-21T21:42:33.313 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:41:47
2026-01-21T21:42:33.313 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:41:47
2026-01-21T21:42:33.313 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T21:42:33.313 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08980566929133856
2026-01-21T21:42:33.316 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T21:42:33.316 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:42:33.317 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:42:33.317 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:42:33.364 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T21:42:34.365 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:42:34.365 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:42:34.365 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:42:35.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:42:37.418 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T21:42:37.418 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:42:37.418 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:42:37.419 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:42:37.419 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:42:37.421 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:42:37.421 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:42:37.422 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:42:37.859 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:42:37.859 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:42:37.861 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024557.8610916
2026-01-21T21:42:37.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:42:37.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:42:38.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:38.436 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:38.436 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:38.436 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:38.883 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:42:41.439 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:41.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:41.461 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:41.461 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:43.105 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.796/60.0
2026-01-21T21:42:44.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:44.483 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:44.483 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:44.483 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:45.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.756/60.0
2026-01-21T21:42:47.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.575/60.0
2026-01-21T21:42:47.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:47.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:47.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:47.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:48.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:42:49.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.39/60.0
2026-01-21T21:42:50.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:50.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:50.555 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:50.555 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:51.692 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.23/60.0
2026-01-21T21:42:53.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:53.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:53.582 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:53.582 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:53.826 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.169/60.0
2026-01-21T21:42:55.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.035/60.0
2026-01-21T21:42:56.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:56.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:56.586 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:56.586 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:42:58.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.875/60.0
2026-01-21T21:42:58.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:42:58.904 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:42:36.284453
2026-01-21T21:42:58.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:42:36.284453
2026-01-21T21:42:58.904 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:42:58.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:42:58.905 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:42:58.905 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:42:58&start_after=2026-01-20T19:42:58&end_after=2026-01-21T19:42:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:42:59.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.050 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.070 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.075 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.078 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.080 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.082 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:42:59.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.085 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.087 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.088 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:42:59.090 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:42:59.090 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:42:59.090 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:42:59.090 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:42:59.090 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:42:59.090 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 436.909135
2026-01-21T21:42:59.091 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:42:59.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:42:59.608 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:42:59.608 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:42:59.608 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:00.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.694/60.0
2026-01-21T21:43:01.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:43:01.112 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:43:01.113 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:43:01.113053    Obs time: 2026-01-21 19:50:16
2026-01-21T21:43:01.113 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:14.886947
2026-01-21T21:43:01.113 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  434
2026-01-21T21:43:01.113 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:43:02.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.534/60.0
2026-01-21T21:43:02.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:02.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:02.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:02.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:04.469 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.475/60.0
2026-01-21T21:43:05.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:05.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:05.656 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:05.656 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:06.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.392/60.0
2026-01-21T21:43:08.121 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:43:08.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:08.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:08.660 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:08.660 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:08.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.207/60.0
2026-01-21T21:43:10.770 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.137/60.0
2026-01-21T21:43:11.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:11.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:11.686 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:11.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:12.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.09/60.0
2026-01-21T21:43:14.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:14.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:14.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:14.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:15.027 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.97/60.0
2026-01-21T21:43:17.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.834/60.0
2026-01-21T21:43:17.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:17.715 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:43:17.715 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:17.715 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:43:18.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:43:19.243 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.665/60.0
2026-01-21T21:43:20.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:20.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:43:20.721 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:20.721 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:21.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.618/60.0
2026-01-21T21:43:23.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.571/60.0
2026-01-21T21:43:23.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:23.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:23.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:23.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:25.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.462/60.0
2026-01-21T21:43:26.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:26.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:43:26.756 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:26.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:43:27.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.266/60.0
2026-01-21T21:43:28.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:43:29.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.155/60.0
2026-01-21T21:43:29.758 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:29.776 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:43:29.777 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:29.777 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:43:31.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.108/60.0
2026-01-21T21:43:32.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:32.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:43:32.780 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:32.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:33.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.999/60.0
2026-01-21T21:43:35.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:35.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:35.801 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:35.801 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:36.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.916/60.0
2026-01-21T21:43:38.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:38.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:43:38.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:38.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:43:38.824 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:38.824 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:43:40.110 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:41.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:41.848 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T21:43:41.848 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:41.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:43:42.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:44.313 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:44.852 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:44.854 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:43:44.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:44.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:46.370 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:47.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:47.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:47.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:47.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:48.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:43:48.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:50.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:50.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:50.883 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:50.883 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:50.883 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:52.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:53.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:53.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:53.904 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:53.904 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:54.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:56.907 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:56.908 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:43:56.908 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:56.908 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:43:56.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:58.169 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:43:58.187 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:43:36.489571
2026-01-21T21:43:58.187 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:43:36.489571
2026-01-21T21:43:58.187 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:43:58.187 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:43:58.187 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:43:58.187 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:43:58&start_after=2026-01-20T19:43:58&end_after=2026-01-21T19:43:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:43:58.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.335 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.335 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.341 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.379 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:43:58.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.383 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:43:58.385 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:43:58.385 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:43:58.385 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:43:58.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:43:58.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:43:58.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 377.614062
2026-01-21T21:43:58.386 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:43:59.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:43:59.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:43:59.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:43:59.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:43:59.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:44:00.384 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:44:00.384 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:44:00.386 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:44:00.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:44:00.389 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:44:00.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:44:00.389755    Obs time: 2026-01-21 19:50:16
2026-01-21T21:44:00.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:15.610245
2026-01-21T21:44:00.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  375
2026-01-21T21:44:00.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:44:02.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:44:02.914 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-21T21:44:02.914 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-21T21:44:02.914 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:44:02.914 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:44:02.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:44:02.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:44:02.914 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:44:02.914 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:44:02.914 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:44:02.914 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:44:02.924 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:44:02.926 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:44:02.926 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T21:44:02.926 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T21:44:02.926 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T21:44:02.966 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T21:44:03.986 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T21:44:05.023 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T21:44:06.065 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T21:44:07.066 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:44:07.156 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T21:44:07.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:44:08.157 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:44:08.158 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.84
2026-01-21T21:44:08.158 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:41:47
2026-01-21T21:44:08.158 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:41:47
2026-01-21T21:44:08.158 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T21:44:08.158 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08988771653543305
2026-01-21T21:44:08.161 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T21:44:08.161 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:44:08.161 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:44:08.161 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:44:08.284 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T21:44:09.285 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:44:09.285 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:44:09.285 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:44:10.418 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:44:12.442 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T21:44:12.442 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:44:12.442 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:44:12.442 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:44:12.442 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:44:12.444 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:44:12.444 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:44:12.446 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:44:12.855 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:44:12.855 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:44:12.857 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024652.8574557
2026-01-21T21:44:12.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:44:12.943 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:44:13.443 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:13.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:44:13.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:13.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:44:16.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:16.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:44:16.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:16.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:17.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:44:18.163 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.734/60.0
2026-01-21T21:44:19.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:19.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:19.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:19.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:20.284 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.694/60.0
2026-01-21T21:44:22.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.573/60.0
2026-01-21T21:44:22.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:22.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:44:22.490 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:22.490 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:44:24.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.54/60.0
2026-01-21T21:44:25.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:25.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:44:25.512 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:25.512 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:44:26.561 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.482/60.0
2026-01-21T21:44:27.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:44:28.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:28.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:44:28.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:28.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:28.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.296/60.0
2026-01-21T21:44:30.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.113/60.0
2026-01-21T21:44:31.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:31.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:31.539 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:31.539 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:32.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.018/60.0
2026-01-21T21:44:34.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:34.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:34.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:34.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:35.069 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.971/60.0
2026-01-21T21:44:37.215 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.789/60.0
2026-01-21T21:44:37.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:44:37.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:37.568 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:37.568 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:37.568 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:39.298 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.642/60.0
2026-01-21T21:44:40.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:40.572 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:44:40.572 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:40.572 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:44:41.419 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.559/60.0
2026-01-21T21:44:43.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.438/60.0
2026-01-21T21:44:43.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:43.592 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:44:43.592 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:43.592 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:45.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.405/60.0
2026-01-21T21:44:46.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:46.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:46.594 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:46.594 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:47.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:44:47.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.384/60.0
2026-01-21T21:44:49.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:49.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:49.612 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:49.612 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:49.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.2/60.0
2026-01-21T21:44:51.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.154/60.0
2026-01-21T21:44:52.615 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:52.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:44:52.616 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:52.616 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:44:53.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.983/60.0
2026-01-21T21:44:55.619 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:55.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:44:55.638 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:55.638 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:56.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.874/60.0
2026-01-21T21:44:57.436 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:44:57.454 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:44:36.689545
2026-01-21T21:44:57.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:44:36.689545
2026-01-21T21:44:57.454 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:44:57.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:44:57.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:44:57.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:44:57&start_after=2026-01-20T19:44:57&end_after=2026-01-21T19:44:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:44:57.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:44:57.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.586 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:44:57.587 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:44:57.587 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:44:57.587 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:44:57.587 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:44:57.587 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:44:57.587 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 318.412222
2026-01-21T21:44:57.588 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:44:58.037 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.854/60.0
2026-01-21T21:44:58.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:44:58.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:44:58.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:44:58.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:44:59.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:44:59.589 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:44:59.589 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:44:59.589985    Obs time: 2026-01-21 19:50:16
2026-01-21T21:44:59.590 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:16.410015
2026-01-21T21:44:59.590 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  316
2026-01-21T21:44:59.590 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:45:00.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.82/60.0
2026-01-21T21:45:01.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:01.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:01.687 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:01.687 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:02.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.712/60.0
2026-01-21T21:45:04.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.655/60.0
2026-01-21T21:45:04.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:04.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:45:04.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:04.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:45:06.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.609/60.0
2026-01-21T21:45:06.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:45:07.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:07.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:45:07.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:07.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:08.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.437/60.0
2026-01-21T21:45:10.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.328/60.0
2026-01-21T21:45:10.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:10.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:10.717 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:10.718 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:12.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.245/60.0
2026-01-21T21:45:13.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:13.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:13.738 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:13.738 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:14.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:16.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:45:16.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:16.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:16.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:16.742 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:16.826 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:18.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:19.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:19.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:19.760 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:19.760 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:21.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:22.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:22.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:22.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:22.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:23.115 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:25.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:25.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:25.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:25.786 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:25.786 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:26.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:45:27.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:28.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:28.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:28.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:28.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:29.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:31.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:31.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:31.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:45:31.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:31.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:45:33.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:34.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:34.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:45:34.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:34.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:35.409 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:45:35.409 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:45:35.434 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:45:35.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:45:36.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:45:37.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:45:37.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-21T21:45:37.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-21T21:45:37.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:45:37.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:45:37.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:45:37.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:45:37.821 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:45:37.821 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:45:37.821 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:45:37.821 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:45:37.831 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:45:37.832 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:45:37.832 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T21:45:37.832 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T21:45:37.832 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T21:45:37.887 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T21:45:38.907 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T21:45:39.928 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T21:45:40.949 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T21:45:41.950 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:45:41.980 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T21:45:42.981 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:45:42.983 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.76
2026-01-21T21:45:42.990 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:44:28
2026-01-21T21:45:42.990 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:44:28
2026-01-21T21:45:42.990 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T21:45:42.990 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09218944881889762
2026-01-21T21:45:42.994 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T21:45:42.994 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T21:45:42.994 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T21:45:42.994 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T21:45:43.146 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T21:45:44.147 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T21:45:44.147 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:45:44.147 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:45:45.281 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:45:46.628 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:45:47.301 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T21:45:47.301 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:45:47.301 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:45:47.301 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:45:47.301 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:45:47.303 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:45:47.303 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:45:47.305 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:45:47.568 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:45:47.568 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:45:47.569 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024747.5699558
2026-01-21T21:45:47.802 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:45:47.802 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:45:48.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:48.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:45:48.322 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:48.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:51.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:51.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:51.341 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:51.341 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:53.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.684/60.0
2026-01-21T21:45:54.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:54.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:45:54.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:54.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:45:55.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.47/60.0
2026-01-21T21:45:56.637 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:45:56.638 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:45:36.889237
2026-01-21T21:45:56.638 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:45:36.889237
2026-01-21T21:45:56.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:45:56.638 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:45:56.638 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:45:56.638 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:45:56&start_after=2026-01-20T19:45:56&end_after=2026-01-21T19:45:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:45:56.758 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.759 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.760 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.761 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.762 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.764 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.764 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:45:56.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:45:56.776 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:45:56.776 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:45:56.776 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:45:56.776 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:45:56.776 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:45:56.776 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 259.223074
2026-01-21T21:45:56.777 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:45:57.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.41/60.0
2026-01-21T21:45:57.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:45:57.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:45:57.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:45:57.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:45:58.779 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:45:58.780 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:45:58.780 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:45:58.780709    Obs time: 2026-01-21 19:50:16
2026-01-21T21:45:58.780 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:17.219291
2026-01-21T21:45:58.780 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  257
2026-01-21T21:45:58.780 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:45:59.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.389/60.0
2026-01-21T21:46:00.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:00.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:46:00.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:00.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:46:01.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.204/60.0
2026-01-21T21:46:03.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:03.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:46:03.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:03.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:03.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.159/60.0
2026-01-21T21:46:05.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.987/60.0
2026-01-21T21:46:05.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:46:06.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:06.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:06.386 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:06.386 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:07.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.967/60.0
2026-01-21T21:46:09.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:09.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:09.410 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:09.410 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:09.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.934/60.0
2026-01-21T21:46:11.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.863/60.0
2026-01-21T21:46:12.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:12.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:12.414 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:12.414 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:13.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.83/60.0
2026-01-21T21:46:15.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:15.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:15.433 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:15.433 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:15.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:46:15.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.721/60.0
2026-01-21T21:46:17.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.7/60.0
2026-01-21T21:46:18.436 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:18.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:46:18.454 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:18.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:46:20.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.666/60.0
2026-01-21T21:46:21.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:21.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:46:21.475 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:21.475 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:22.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.522/60.0
2026-01-21T21:46:24.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.351/60.0
2026-01-21T21:46:24.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:24.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:24.478 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:24.478 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:25.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:46:26.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.316/60.0
2026-01-21T21:46:27.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:27.500 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:46:27.500 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:27.500 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:46:28.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.132/60.0
2026-01-21T21:46:30.503 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:30.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:46:30.504 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:30.504 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:30.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.111/60.0
2026-01-21T21:46:32.765 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.964/60.0
2026-01-21T21:46:33.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:33.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:33.521 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:33.521 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:34.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.805/60.0
2026-01-21T21:46:35.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:46:36.522 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:36.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:36.541 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:36.541 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:36.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.746/60.0
2026-01-21T21:46:38.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.727/60.0
2026-01-21T21:46:39.544 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:39.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:46:39.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:39.563 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:46:41.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.679/60.0
2026-01-21T21:46:42.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:42.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:46:42.567 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:42.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:43.146 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.559/60.0
2026-01-21T21:46:45.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.425/60.0
2026-01-21T21:46:45.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:45.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:45.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:45.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:45.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:46:47.526 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.239/60.0
2026-01-21T21:46:48.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:48.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:46:48.594 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:48.594 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:46:49.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:46:51.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:51.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:46:51.617 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:51.617 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:51.669 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:46:53.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:46:54.620 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:54.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:46:54.643 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:54.643 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:46:55.834 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:46:55.854 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:46:37.090491
2026-01-21T21:46:55.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:46:37.090491
2026-01-21T21:46:55.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:46:55.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:46:55.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:46:55.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:46:55&start_after=2026-01-20T19:46:55&end_after=2026-01-21T19:46:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:46:55.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:46:55.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:55.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:55.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:55.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:55.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:55.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:55.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:55.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:55.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:55.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:56.000 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:56.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:56.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:46:56.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:56.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:56.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:56.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:46:56.009 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:46:56.009 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:46:56.009 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13545
2026-01-21T21:46:56.009 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:46:56.009 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:46:56.009 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 199.990304
2026-01-21T21:46:56.010 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:46:57.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:46:57.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-21T21:46:57.663 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:46:57.663 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-21T21:46:57.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:46:58.011 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:46:58.012 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:46:58.012 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:46:58.012087    Obs time: 2026-01-21 19:50:16
2026-01-21T21:46:58.012 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:17.987913
2026-01-21T21:46:58.012 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  197
2026-01-21T21:46:58.012 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:47:00.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:47:00.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:47:00.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-21T21:47:00.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:47:00.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:47:02.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:47:03.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:47:03.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:47:03.685 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:47:03.685 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:47:04.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:47:05.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:47:06.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:47:06.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:47:06.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:47:06.689 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:47:06.689 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:47:08.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T21:47:09.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:47:09.708 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:47:09.708 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:47:09.708 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:47:10.036 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:47:10.036 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:47:10.038 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:47:12.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:47:12.711 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-21T21:47:12.711 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-21T21:47:12.711 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:47:12.711 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:47:12.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:47:12.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:47:12.711 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:47:12.711 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:47:12.711 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:47:12.712 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:47:12.722 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:47:12.723 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:47:12.723 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T21:47:12.723 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:47:12.723 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:47:12.912 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T21:47:13.931 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T21:47:14.951 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T21:47:15.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:47:15.972 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T21:47:16.992 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T21:47:18.013 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T21:47:19.034 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T21:47:20.055 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 8
2026-01-21T21:47:21.094 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:47:22.095 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T21:47:22.095 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T21:47:22.095 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:47:22.095 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:47:22.109 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:47:23.110 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:47:23.162 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:47:24.163 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:47:24.165 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.95
2026-01-21T21:47:24.165 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:46:36
2026-01-21T21:47:24.165 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:46:36
2026-01-21T21:47:24.165 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:47:24.165 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09178622047244092
2026-01-21T21:47:24.168 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T21:47:24.168 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-21T21:47:24.168 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-21T21:47:25.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:47:25.206 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:47:27.209 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-21T21:47:27.209 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:47:27.209 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:47:27.209 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:47:27.209 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:47:27.211 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:47:27.211 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:47:27.212 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:47:27.313 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:47:27.313 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:47:27.315 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024847.3153043
2026-01-21T21:47:27.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:47:27.710 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:47:28.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:47:28.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:47:28.233 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:47:28.233 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:47:31.236 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:47:31.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:47:31.256 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:47:31.256 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:47:32.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230053_13499_13545.json , Iteration 1/1, Unit 5/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-21T21:47:33.577 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:47:33.577 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:47:33.579 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:47:34.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T21:47:34.843 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-21T21:47:34.843 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:47:34.843 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:47:35.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:47:35.251 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:47:35.251 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script AT_2026ayt_17230053_13499_13545.json was run successfully
2026-01-21T21:47:35.251 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T21:47:35.251 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T21:47:35.251 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T21:47:35.251 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T21:47:35.251 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T21:47:35.251 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:47:35.251 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:47:35.752 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:47:35.752 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T21:47:35.752 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:47:35.752 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:47:35.752 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:47:35.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:47:35.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:47:35.752 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:47:35.752 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T21:47:35.754 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:35.26248   Targ dec = -32:04:46.2792
2026-01-21T21:47:35.754 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:47:35.754 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:47:35.754 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:47:35.760 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:47:35.760 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:47:35.760 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:47:35.760 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:47:36.787 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:47:38.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:47:38.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:47:38.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:47:39.255 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:47:39.255 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T21:47:39.255 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508806 COMPLETED 13545 reason
2026-01-21T21:47:39.255 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508806 COMPLETED 13545 reason
2026-01-21T21:47:39.255 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:47:39.255 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:47:39.255 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:47:39.255 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:47:39.255 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:47:39.255 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:47:42.259 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:47:42.259 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:47:44.261 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:47:44.261 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:47:44.261 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T21:47:44.261 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T21:47:44.261 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T21:47:44.263 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T21:47:44.263 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T19:50:16Z
2026-01-21T21:47:44.263 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T21:47:44.263 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T21:47:44.263 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T21:47:44.263 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T21:47:44.263 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T21:47:44.263 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:47:44.263 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:47:44.764 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:47:44.764 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T21:47:44.764 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:47:44.764 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:47:44.764 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:47:44.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:47:44.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:47:44.764 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:47:44.764 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T21:47:44.785 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:35.38596   Targ dec = -32:04:45.8688
2026-01-21T21:47:44.785 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:47:44.785 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:47:44.785 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:47:44.792 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:47:44.792 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:47:44.792 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:47:44.792 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:47:45.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:47:45.849 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:47:47.851 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:47:47.851 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:47:47.851 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:47:48.267 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:47:48.268 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T21:47:48.268 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T21:47:48.268 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T21:47:48.268 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T21:47:48.268 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508806
2026-01-21T21:47:48.268 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T21:47:48.268 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T21:47:48.268 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T19:29:12', 'end': '2026-01-21T19:47:48', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1116.0', 'events': {}}} with config status ID 17508806
2026-01-21T21:47:48.425 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T21:47:48.425 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:28:53Z', 'guide_off', 'config_id 13545', 'config_status_id 17508806', 'update_OCS 17508806 ATTEMPTED', 'run_script setup_AT_2026ayt_17230053_13499_13545.json', 'run_script AT_2026ayt_17230053_13499_13545.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17508806 COMPLETED 13545 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:50:16Z', 'run_script arc_flat_lamp_off.json'] at time 21:47:48
2026-01-21T21:47:55.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:47:55.069 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:47:37.287876
2026-01-21T21:47:55.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:47:37.287876
2026-01-21T21:47:55.069 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:47:55.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:47:55.069 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:47:55.069 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:47:55&start_after=2026-01-20T19:47:55&end_after=2026-01-21T19:47:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:47:55.187 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:47:55.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:47:55.204 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:47:55.204 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:47:55.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:47:55.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:28:53Z
2026-01-21T21:47:55.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -1142.204691
2026-01-21T21:47:55.205 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:47:57.207 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:47:57.208 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:47:57.208 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:47:57.208623    Obs time: 2026-01-21 19:28:53
2026-01-21T21:47:57.208 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:40:55.791377
2026-01-21T21:47:57.208 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85255
2026-01-21T21:47:57.208 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:28:53Z', 'guide_off', 'config_id 13545', 'config_status_id 17508872', 'update_OCS 17508872 ATTEMPTED', 'run_script setup_AT_2026ayt_17230119_13499_13545.json', 'run_script AT_2026ayt_17230119_13499_13545.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17508872 COMPLETED 13545 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:50:16Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:47:57.208 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T21:47:57.208 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T21:47:57.208 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:47:57.209 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T21:47:57.209 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T21:47:57.209 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T21:47:57.209 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T21:47:57.209 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T21:47:57.209 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T21:47:57.209 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T21:47:57.209 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:47:57.210 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:47:57.210 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:47:57.210 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:47:57.210 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:47:57.210 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:48:00.213 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:48:00.213 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:48:02.215 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:48:02.215 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:48:02.215 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T19:28:53Z
2026-01-21T21:48:02.215 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T19:28:53Z
2026-01-21T21:48:02.215 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T21:48:02.215 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T21:48:02.215 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T21:48:02.215 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T21:48:02.215 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:48:02.215 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:48:04.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:48:05.218 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T21:48:05.218 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13545
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13545
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17508872
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17508872
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508872 ATTEMPTED
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508872 ATTEMPTED
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 9.45647, 'targ_dec': -32.0086, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_AT_2026ayt_17230119_13499_13545.json'}
2026-01-21T21:48:07.221 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:48:07.221 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508872
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T21:48:07.221 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17508872
2026-01-21T21:48:07.287 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T21:48:07.722 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:48:07.722 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_AT_2026ayt_17230119_13499_13545.json 1 times
2026-01-21T21:48:07.722 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T21:48:07.724 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T21:48:07.724 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T21:48:07.725 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T21:48:10.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:48:11.773 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:48:12.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T21:48:13.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T21:48:13.811 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  9.45688311257246 is close enough to target ra = 9.45647
2026-01-21T21:48:13.812 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -32.0073714942705 is close enough to target dec = -32.0086
2026-01-21T21:48:13.812 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T21:48:13.812 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:48:13.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:48:13.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:48:13.812 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:48:13.812 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T21:48:13.812 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T21:48:13.823 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:48:13.823 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:48:13.886 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:48:14.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:48:14.887 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:48:14.887 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:48:14.977 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:48:15.978 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:48:16.030 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:48:17.031 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:48:17.032 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.95
2026-01-21T21:48:17.033 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:47:41
2026-01-21T21:48:17.033 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:47:41
2026-01-21T21:48:17.033 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:48:17.033 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09178622047244092
2026-01-21T21:48:17.036 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T21:48:17.036 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T21:48:17.036 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T21:48:17.045 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:48:17.045 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:48:17.120 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:48:18.121 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:48:18.121 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:48:18.173 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:48:19.174 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:48:19.226 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:48:20.227 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:48:20.229 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.95
2026-01-21T21:48:20.229 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:47:41
2026-01-21T21:48:20.229 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:47:41
2026-01-21T21:48:20.229 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:48:20.229 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09178622047244092
2026-01-21T21:48:24.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:48:25.292 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T21:48:25.292 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:48:25.292 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:48:25.292 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:48:25.292 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:48:25.292 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:48:25.294 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:48:25.294 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:48:25.315 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:48:25.444 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:48:25.444 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:48:25.446 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024905.4466283
2026-01-21T21:48:30.706 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:48:30.707 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:48:30.708 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:48:30.801 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T21:48:34.243 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:48:34.805 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T21:48:34.805 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T21:48:44.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:48:44.856 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T21:48:44.856 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:48:44.856 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-21T21:48:44.856 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-21T21:48:44.856 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T21:48:44.925 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:48:44.925 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.688932
2026-01-21T21:48:44.925 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:48:44.925 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:25.637, -32:00:17.190).
2026-01-21T21:48:44.925 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 25.637  -32 00 17.190 .
2026-01-21T21:48:44.925 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 25.637  -32 00 17.190 .
2026-01-21T21:48:44.925 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510684.55500000005
2026-01-21T21:48:44.925 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115217.19
2026-01-21T21:48:45.136 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:48:50.142 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T21:48:50.142 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:48:50.142 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:48:50.142 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:48:50.142 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:48:50.142 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:48:50.144 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:48:50.144 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:48:50.146 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:48:50.261 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:48:50.261 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:48:50.263 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024930.26351
2026-01-21T21:48:51.644 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:48:54.263 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:48:54.264 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:48:37.492968
2026-01-21T21:48:54.264 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:48:37.492968
2026-01-21T21:48:54.264 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:48:54.264 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:48:54.264 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:48:54.264 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:48:54&start_after=2026-01-20T19:48:54&end_after=2026-01-21T19:48:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:48:54.391 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.396 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:48:54.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:48:54.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:48:54.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:48:54.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:48:54.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:48:54.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 81.591311
2026-01-21T21:48:54.409 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:48:54.523 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:48:54.523 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:48:54.525 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:48:54.650 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T21:48:56.411 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:48:56.412 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:48:56.412 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:48:56.412775    Obs time: 2026-01-21 19:50:16
2026-01-21T21:48:56.412 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:19.587225
2026-01-21T21:48:56.412 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  79
2026-01-21T21:48:56.412 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:48:58.653 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T21:49:03.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:49:08.704 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T21:49:08.704 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T21:49:08.704 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-21T21:49:08.704 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-21T21:49:08.704 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T21:49:08.723 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T21:49:08.724 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.682241
2026-01-21T21:49:08.724 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T21:49:08.724 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:27.934, -31:57:50.069).
2026-01-21T21:49:08.724 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 27.934  -31 57 50.069 .
2026-01-21T21:49:08.724 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 27.934  -31 57 50.069 .
2026-01-21T21:49:08.724 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510719.01
2026-01-21T21:49:08.724 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115070.069
2026-01-21T21:49:08.934 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T21:49:13.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:49:13.960 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T21:49:13.960 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:49:13.960 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:49:13.960 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:49:13.960 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:49:13.960 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:49:13.962 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:49:13.962 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:49:13.964 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:49:14.063 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:49:14.063 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:49:14.065 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024954.0650148
2026-01-21T21:49:15.462 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:49:18.324 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:49:18.325 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:49:18.345 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:49:18.468 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T21:49:23.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:49:24.473 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T21:49:24.473 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:49:24.474 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:49:24.474 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:49:24.474 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:49:24.476 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:49:24.476 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:49:24.478 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:49:24.591 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:49:24.591 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:49:24.593 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769024964.593545
2026-01-21T21:49:25.975 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T21:49:28.852 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T21:49:28.852 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:49:28.854 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:49:28.982 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T21:49:33.475 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:49:36.669 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9 to host 127.0.0.1 on port 12360
2026-01-21T21:49:36.669 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:49:36.669 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:49:39.672 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9
2026-01-21T21:49:39.672 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2016  11836  13.9
2026-01-21T21:49:41.674 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:49:43.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:49:53.514 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:49:53.534 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:49:37.691932
2026-01-21T21:49:53.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:49:37.691932
2026-01-21T21:49:53.534 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:49:53.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:49:53.534 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:49:53.534 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:49:53&start_after=2026-01-20T19:49:53&end_after=2026-01-21T19:49:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:49:53.663 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.663 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.664 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.668 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.668 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.671 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.673 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.673 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:49:53.674 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.675 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.676 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.677 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:49:53.679 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:49:53.679 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:49:53.679 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:49:53.679 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:49:53.679 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 22.320544
2026-01-21T21:49:53.680 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:49:55.682 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:49:55.703 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:49:55.703 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:49:55.703159    Obs time: 2026-01-21 19:50:16
2026-01-21T21:49:55.703 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:20.296841
2026-01-21T21:49:55.703 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  20
2026-01-21T21:49:55.703 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T21:50:02.710 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:50:12.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:50:20.713 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T21:50:20.713 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T21:50:20.713 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T21:50:22.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:50:23.716 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T21:50:23.716 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T21:50:25.719 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T21:50:25.719 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:50:25.719 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:50:25.719 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:50:25.719 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:50:25.719 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:50:25.719 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:50:25.719 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:50:26.743 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:50:28.745 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T21:50:28.745 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T21:50:28.745 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T21:50:29.469 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T21:50:29.469 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_AT_2026ayt_17230119_13499_13545.json was run successfully
2026-01-21T21:50:29.469 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:50:29.469 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:50:29.469 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:50:29.469 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script AT_2026ayt_17230119_13499_13545.json
2026-01-21T21:50:29.469 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 600000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'AT 2026ayt', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'AT_2026ayt_17230119_13499_13545.json'}
2026-01-21T21:50:29.469 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T21:50:29.469 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T21:50:29.970 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T21:50:29.970 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script AT_2026ayt_17230119_13499_13545.json 1 times
2026-01-21T21:50:29.970 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-21T21:50:29.970 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T21:50:29.970 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T21:50:29.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T21:50:29.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T21:50:29.970 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T21:50:29.970 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T21:50:29.970 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T21:50:29.970 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T21:50:29.980 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T21:50:29.981 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T21:50:29.981 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T21:50:29.981 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T21:50:29.981 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:50:30.040 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:50:31.041 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T21:50:31.041 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T21:50:31.041 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T21:50:31.041 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T21:50:31.093 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T21:50:32.094 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T21:50:32.146 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T21:50:32.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:50:33.147 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T21:50:33.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.66
2026-01-21T21:50:33.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 21:48:13
2026-01-21T21:50:33.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T21:48:13
2026-01-21T21:50:33.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T21:50:33.149 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09196204724409447
2026-01-21T21:50:33.152 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T21:50:33.152 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T21:50:33.152 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T21:50:34.188 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T21:50:36.211 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T21:50:36.211 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T21:50:36.211 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T21:50:36.211 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T21:50:36.211 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T21:50:36.213 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T21:50:36.213 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T21:50:36.215 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T21:50:36.333 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T21:50:36.333 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T21:50:36.335 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769025036.335442
2026-01-21T21:50:36.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T21:50:36.712 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T21:50:37.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:37.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:50:37.231 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:37.231 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:50:40.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:40.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:50:40.252 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:40.253 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:50:41.784 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 594.591/600.0
2026-01-21T21:50:42.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:50:43.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:43.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:50:43.256 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:43.256 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:50:43.815 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 592.553/600.0
2026-01-21T21:50:45.845 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 590.521/600.0
2026-01-21T21:50:46.260 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:46.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:50:46.278 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:46.278 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:50:47.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 588.492/600.0
2026-01-21T21:50:49.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:49.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:50:49.297 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:49.297 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:50:49.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.461/600.0
2026-01-21T21:50:51.936 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.431/600.0
2026-01-21T21:50:52.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:52.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:50:52.316 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:52.316 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:50:52.761 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:50:52.762 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:50:37.892297
2026-01-21T21:50:52.762 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:50:37.892297
2026-01-21T21:50:52.762 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:50:52.762 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:50:52.763 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:50:52.763 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:50:52&start_after=2026-01-20T19:50:52&end_after=2026-01-21T19:50:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:50:52.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.883 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.885 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.886 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.887 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.889 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.891 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:50:52.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:50:52.897 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:50:52.897 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:50:52.897 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:50:52.897 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:50:52.897 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -36.89759
2026-01-21T21:50:52.898 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:50:53.967 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.401/600.0
2026-01-21T21:50:54.900 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:50:54.901 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:50:54.901 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:50:54.901408    Obs time: 2026-01-21 19:50:16
2026-01-21T21:50:54.901 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:21.098592
2026-01-21T21:50:54.901 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86361
2026-01-21T21:50:54.901 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509279', 'update_OCS 17509279 ATTEMPTED', 'run_script setup_std_star_HD60753_17230526_13492_13538.json', 'run_script std_star_HD60753_17230526_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509279 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:50:54.901 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:50:55.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:55.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:50:55.318 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:55.318 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:50:55.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.369/600.0
2026-01-21T21:50:58.028 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.34/600.0
2026-01-21T21:50:58.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:50:58.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:50:58.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:50:58.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:00.058 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 576.309/600.0
2026-01-21T21:51:01.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:01.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:51:01.360 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:01.360 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:51:01.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:51:02.088 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 574.278/600.0
2026-01-21T21:51:04.119 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 572.249/600.0
2026-01-21T21:51:04.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:04.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:51:04.380 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:04.380 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:06.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 570.217/600.0
2026-01-21T21:51:07.383 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:07.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:07.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:07.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:08.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 568.186/600.0
2026-01-21T21:51:10.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 566.157/600.0
2026-01-21T21:51:10.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:10.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:51:10.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:10.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:51:11.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:51:12.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 564.125/600.0
2026-01-21T21:51:13.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:13.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:51:13.410 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:13.410 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:14.271 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 562.097/600.0
2026-01-21T21:51:16.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 560.065/600.0
2026-01-21T21:51:16.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:16.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:16.433 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:16.433 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:18.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 558.034/600.0
2026-01-21T21:51:19.436 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:19.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:51:19.437 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:19.437 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:51:20.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 556.004/600.0
2026-01-21T21:51:21.927 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:51:22.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 553.973/600.0
2026-01-21T21:51:22.440 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:22.464 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T21:51:22.464 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:22.464 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:51:24.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 551.943/600.0
2026-01-21T21:51:25.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:25.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:51:25.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:25.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:26.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.913/600.0
2026-01-21T21:51:28.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:28.484 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.884/600.0
2026-01-21T21:51:28.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:28.486 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:28.486 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:30.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.853/600.0
2026-01-21T21:51:31.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:31.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:31.490 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:31.490 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:31.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:51:32.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.823/600.0
2026-01-21T21:51:34.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:34.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:34.512 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:34.512 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:34.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.791/600.0
2026-01-21T21:51:36.606 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 539.761/600.0
2026-01-21T21:51:37.515 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:37.516 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:37.516 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:37.516 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:38.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 537.73/600.0
2026-01-21T21:51:40.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:40.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:51:40.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:40.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:51:40.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 535.701/600.0
2026-01-21T21:51:41.944 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:51:42.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 533.669/600.0
2026-01-21T21:51:43.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:43.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:51:43.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:43.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:51:44.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 531.639/600.0
2026-01-21T21:51:46.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:46.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:51:46.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:46.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:46.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 529.609/600.0
2026-01-21T21:51:48.826 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 527.54/600.0
2026-01-21T21:51:49.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:49.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:49.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:49.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:50.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 525.512/600.0
2026-01-21T21:51:51.952 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:51:51.972 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:51:38.088950
2026-01-21T21:51:51.972 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:51:38.088950
2026-01-21T21:51:51.972 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:51:51.972 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:51:51.972 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:51:51.972 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:51:51&start_after=2026-01-20T19:51:51&end_after=2026-01-21T19:51:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:51:52.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.233 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.233 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.239 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.239 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:51:52.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.241 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.242 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.244 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:51:52.245 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:51:52.245 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:51:52.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:51:52.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:51:52.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -96.245738
2026-01-21T21:51:52.246 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:51:52.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:52.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:52.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:52.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:52.887 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 523.481/600.0
2026-01-21T21:51:54.247 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:51:54.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:51:54.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:51:54.248186    Obs time: 2026-01-21 19:50:16
2026-01-21T21:51:54.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:21.751814
2026-01-21T21:51:54.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86301
2026-01-21T21:51:54.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509302', 'update_OCS 17509302 ATTEMPTED', 'run_script setup_std_star_HD60753_17230549_13492_13538.json', 'run_script std_star_HD60753_17230549_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509302 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:51:54.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:51:54.917 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 521.451/600.0
2026-01-21T21:51:55.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:55.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:55.610 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:55.610 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:56.947 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 519.42/600.0
2026-01-21T21:51:58.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:51:58.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:51:58.632 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:51:58.632 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:51:58.978 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 517.388/600.0
2026-01-21T21:52:01.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 515.358/600.0
2026-01-21T21:52:01.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:52:01.635 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:01.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:52:01.656 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:01.656 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:52:03.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 513.329/600.0
2026-01-21T21:52:04.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:04.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:52:04.658 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:04.658 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:05.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 511.297/600.0
2026-01-21T21:52:07.138 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 509.268/600.0
2026-01-21T21:52:07.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:07.679 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:07.679 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:07.679 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:09.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 507.2/600.0
2026-01-21T21:52:10.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:10.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:52:10.684 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:10.684 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:52:11.263 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:52:11.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 505.132/600.0
2026-01-21T21:52:13.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 503.063/600.0
2026-01-21T21:52:13.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:13.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T21:52:13.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:13.710 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:52:15.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 500.993/600.0
2026-01-21T21:52:16.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:16.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:52:16.733 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:16.733 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:17.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 498.925/600.0
2026-01-21T21:52:19.509 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 496.857/600.0
2026-01-21T21:52:19.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:19.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:19.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:19.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:21.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:52:21.540 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 494.828/600.0
2026-01-21T21:52:22.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:22.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:52:22.775 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:22.775 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:52:23.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 492.797/600.0
2026-01-21T21:52:25.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 490.765/600.0
2026-01-21T21:52:25.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:25.796 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:52:25.796 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:25.796 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:27.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 488.734/600.0
2026-01-21T21:52:28.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:28.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:52:28.798 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:28.798 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:52:29.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 486.666/600.0
2026-01-21T21:52:31.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:52:31.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:31.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 484.598/600.0
2026-01-21T21:52:31.816 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T21:52:31.816 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:31.816 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:52:33.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 482.53/600.0
2026-01-21T21:52:34.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:34.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:52:34.817 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:34.817 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:35.905 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 480.499/600.0
2026-01-21T21:52:37.820 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:37.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:37.837 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:37.837 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:37.973 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 478.431/600.0
2026-01-21T21:52:40.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 476.362/600.0
2026-01-21T21:52:40.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:40.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:40.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:40.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:41.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:52:42.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 474.295/600.0
2026-01-21T21:52:43.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:43.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:43.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:43.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:44.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 472.228/600.0
2026-01-21T21:52:46.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 470.197/600.0
2026-01-21T21:52:46.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:46.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:46.866 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:46.866 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:48.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 468.129/600.0
2026-01-21T21:52:49.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:49.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:49.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:49.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:50.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 466.061/600.0
2026-01-21T21:52:51.300 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:52:51.319 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:52:38.290616
2026-01-21T21:52:51.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:52:38.290616
2026-01-21T21:52:51.319 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:52:51.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:52:51.320 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:52:51.320 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:52:51&start_after=2026-01-20T19:52:51&end_after=2026-01-21T19:52:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:52:51.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:52:51.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.455 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:52:51.456 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:52:51.456 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:52:51.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:52:51.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:52:51.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -155.456864
2026-01-21T21:52:51.457 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:52:52.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 464.029/600.0
2026-01-21T21:52:52.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:52.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:52.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:52.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:53.459 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:52:53.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:52:53.460 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:52:53.460754    Obs time: 2026-01-21 19:50:16
2026-01-21T21:52:53.460 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:22.539246
2026-01-21T21:52:53.460 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86242
2026-01-21T21:52:53.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509325', 'update_OCS 17509325 ATTEMPTED', 'run_script setup_std_star_HD60753_17230572_13492_13538.json', 'run_script std_star_HD60753_17230572_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509325 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:52:53.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:52:54.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 461.998/600.0
2026-01-21T21:52:55.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:55.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:55.909 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:55.909 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:52:56.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 459.93/600.0
2026-01-21T21:52:58.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 457.862/600.0
2026-01-21T21:52:58.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:52:58.911 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:52:58.911 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:52:58.911 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:00.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:53:00.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 455.831/600.0
2026-01-21T21:53:01.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:01.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:01.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:01.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:02.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 453.8/600.0
2026-01-21T21:53:04.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 451.771/600.0
2026-01-21T21:53:04.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:04.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:04.945 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:04.945 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:06.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 449.741/600.0
2026-01-21T21:53:07.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:07.965 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:07.965 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:07.965 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:08.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 447.671/600.0
2026-01-21T21:53:10.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:53:10.801 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 445.603/600.0
2026-01-21T21:53:10.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:10.988 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:10.988 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:10.988 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:12.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 443.534/600.0
2026-01-21T21:53:13.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:13.990 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:13.990 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:13.990 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:14.937 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 441.466/600.0
2026-01-21T21:53:16.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:17.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 439.398/600.0
2026-01-21T21:53:17.011 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:53:17.011 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:17.011 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:53:19.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 437.33/600.0
2026-01-21T21:53:20.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:20.015 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:53:20.015 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:20.015 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:20.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:53:21.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 435.301/600.0
2026-01-21T21:53:23.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:23.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:23.038 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:23.038 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:23.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 433.233/600.0
2026-01-21T21:53:25.241 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 431.163/600.0
2026-01-21T21:53:26.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:26.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:53:26.056 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:26.056 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:53:27.309 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 429.096/600.0
2026-01-21T21:53:29.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:29.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:53:29.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:29.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:29.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 427.027/600.0
2026-01-21T21:53:30.498 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:53:31.445 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 424.958/600.0
2026-01-21T21:53:32.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:32.096 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:32.096 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:32.096 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:33.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 422.89/600.0
2026-01-21T21:53:35.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:35.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:53:35.100 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:35.100 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:53:35.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 420.823/600.0
2026-01-21T21:53:37.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 418.754/600.0
2026-01-21T21:53:38.102 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:38.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.00000000000003
2026-01-21T21:53:38.103 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:38.103 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T21:53:39.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 416.725/600.0
2026-01-21T21:53:40.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:53:41.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:41.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T21:53:41.129 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:41.129 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:41.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 414.693/600.0
2026-01-21T21:53:43.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 412.662/600.0
2026-01-21T21:53:44.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:44.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:44.154 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:44.154 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:45.772 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 410.631/600.0
2026-01-21T21:53:47.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:47.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:53:47.176 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:47.176 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:53:47.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 408.563/600.0
2026-01-21T21:53:49.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 406.495/600.0
2026-01-21T21:53:50.179 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:50.180 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:53:50.180 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:50.180 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:50.517 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:53:50.518 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:53:38.489597
2026-01-21T21:53:50.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:53:38.489597
2026-01-21T21:53:50.518 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:53:50.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:53:50.519 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:53:50.519 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:53:50&start_after=2026-01-20T19:53:50&end_after=2026-01-21T19:53:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:53:50.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:53:50.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:53:50.659 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:53:50.659 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:53:50.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:53:50.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:53:50.660 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -214.660008
2026-01-21T21:53:50.678 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:53:51.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.428/600.0
2026-01-21T21:53:52.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:53:52.702 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:53:52.702 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:53:52.702399    Obs time: 2026-01-21 19:50:16
2026-01-21T21:53:52.702 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:23.297601
2026-01-21T21:53:52.702 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86183
2026-01-21T21:53:52.702 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509325', 'update_OCS 17509325 ATTEMPTED', 'run_script setup_std_star_HD60753_17230572_13492_13538.json', 'run_script std_star_HD60753_17230572_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509325 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:53:52.702 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:53:53.183 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:53.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:53.185 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:53.185 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:54.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 402.358/600.0
2026-01-21T21:53:56.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 400.329/600.0
2026-01-21T21:53:56.188 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:56.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:56.189 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:56.189 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:58.069 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 398.297/600.0
2026-01-21T21:53:59.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:53:59.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:53:59.205 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:53:59.205 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:53:59.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:54:00.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 396.266/600.0
2026-01-21T21:54:02.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 394.198/600.0
2026-01-21T21:54:02.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:02.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:02.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:02.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:04.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 392.132/600.0
2026-01-21T21:54:05.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:05.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:54:05.247 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:05.247 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:54:06.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 390.063/600.0
2026-01-21T21:54:08.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:08.251 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:54:08.251 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:08.251 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:08.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 387.996/600.0
2026-01-21T21:54:09.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:54:10.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 385.927/600.0
2026-01-21T21:54:11.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:11.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:11.269 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:11.269 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:12.509 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 383.895/600.0
2026-01-21T21:54:14.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:14.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:54:14.273 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:14.273 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:54:14.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 381.827/600.0
2026-01-21T21:54:16.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 379.76/600.0
2026-01-21T21:54:17.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:17.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:54:17.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:17.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:18.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 377.69/600.0
2026-01-21T21:54:19.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:54:20.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:20.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:20.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:20.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:20.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 375.661/600.0
2026-01-21T21:54:22.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.629/600.0
2026-01-21T21:54:23.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:23.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-21T21:54:23.324 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:23.324 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-21T21:54:24.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.598/600.0
2026-01-21T21:54:26.327 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:26.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-21T21:54:26.328 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:26.328 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:26.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 369.53/600.0
2026-01-21T21:54:28.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 367.462/600.0
2026-01-21T21:54:29.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:29.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:29.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:29.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:29.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:54:30.973 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 365.433/600.0
2026-01-21T21:54:32.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:32.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:32.349 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:32.349 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:33.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 363.363/600.0
2026-01-21T21:54:35.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 361.295/600.0
2026-01-21T21:54:35.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:35.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:54:35.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:35.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:54:37.177 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 359.228/600.0
2026-01-21T21:54:38.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:38.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:54:38.393 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:38.393 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:39.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 357.158/600.0
2026-01-21T21:54:39.744 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:54:41.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 355.092/600.0
2026-01-21T21:54:41.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:41.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:41.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:41.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:43.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 353.061/600.0
2026-01-21T21:54:44.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:44.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:54:44.414 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:44.414 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:54:45.412 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 350.993/600.0
2026-01-21T21:54:47.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:47.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:54:47.418 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:47.418 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:47.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.925/600.0
2026-01-21T21:54:49.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.893/600.0
2026-01-21T21:54:49.753 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:54:49.754 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:54:38.693488
2026-01-21T21:54:49.754 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:54:38.693488
2026-01-21T21:54:49.754 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:54:49.754 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:54:49.755 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:54:49.755 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:54:49&start_after=2026-01-20T19:54:49&end_after=2026-01-21T19:54:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:54:49.885 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.885 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.886 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.888 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.888 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.889 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:54:49.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:54:49.902 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:54:49.902 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:54:49.902 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:54:49.902 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:54:49.902 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -273.902356
2026-01-21T21:54:49.903 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:54:50.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:50.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:50.444 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:50.444 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:51.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.825/600.0
2026-01-21T21:54:51.905 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:54:51.923 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:54:51.923 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:54:51.923356    Obs time: 2026-01-21 19:50:16
2026-01-21T21:54:51.923 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:24.076644
2026-01-21T21:54:51.923 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86124
2026-01-21T21:54:51.923 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509325', 'update_OCS 17509325 ATTEMPTED', 'run_script setup_std_star_HD60753_17230572_13492_13538.json', 'run_script std_star_HD60753_17230572_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509325 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:54:51.923 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:54:53.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:53.467 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:54:53.467 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:53.467 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:54:53.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.756/600.0
2026-01-21T21:54:55.678 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.689/600.0
2026-01-21T21:54:56.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:56.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:54:56.492 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:56.492 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:57.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.659/600.0
2026-01-21T21:54:58.930 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:54:59.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:54:59.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:54:59.496 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:54:59.496 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:54:59.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.627/600.0
2026-01-21T21:55:01.845 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.559/600.0
2026-01-21T21:55:02.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:02.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:02.519 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:02.519 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:03.913 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 332.49/600.0
2026-01-21T21:55:05.522 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:05.523 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:05.523 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:05.523 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:05.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 330.422/600.0
2026-01-21T21:55:08.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 328.393/600.0
2026-01-21T21:55:08.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:08.547 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:08.547 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:08.547 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:08.940 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:55:10.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 326.323/600.0
2026-01-21T21:55:11.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:11.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:11.567 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:11.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:12.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 324.255/600.0
2026-01-21T21:55:14.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 322.187/600.0
2026-01-21T21:55:14.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:14.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:55:14.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:14.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:55:16.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 320.157/600.0
2026-01-21T21:55:17.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:17.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:55:17.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:17.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:18.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 318.089/600.0
2026-01-21T21:55:18.949 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:55:20.384 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 316.02/600.0
2026-01-21T21:55:20.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:20.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:20.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:20.614 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:22.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 313.952/600.0
2026-01-21T21:55:23.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:23.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:55:23.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:23.619 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:55:24.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 311.883/600.0
2026-01-21T21:55:26.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 309.817/600.0
2026-01-21T21:55:26.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:26.639 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:55:26.639 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:26.639 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:28.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 307.749/600.0
2026-01-21T21:55:28.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:55:29.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:29.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:29.663 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:29.663 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:30.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.68/600.0
2026-01-21T21:55:32.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:32.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:55:32.686 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:32.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:55:32.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 303.612/600.0
2026-01-21T21:55:34.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.542/600.0
2026-01-21T21:55:35.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:35.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:55:35.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:35.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:36.892 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.474/600.0
2026-01-21T21:55:38.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:38.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:55:38.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:38.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:55:38.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.443/600.0
2026-01-21T21:55:38.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:55:40.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.413/600.0
2026-01-21T21:55:41.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:41.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T21:55:41.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:41.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:55:43.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.345/600.0
2026-01-21T21:55:44.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:44.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T21:55:44.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:44.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:55:45.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.277/600.0
2026-01-21T21:55:47.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.209/600.0
2026-01-21T21:55:47.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:47.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:55:47.723 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:47.723 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:48.976 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:55:48.993 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:55:38.890115
2026-01-21T21:55:48.993 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:55:38.890115
2026-01-21T21:55:48.993 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:55:48.993 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:55:48.993 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:55:48.994 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:55:48&start_after=2026-01-20T19:55:48&end_after=2026-01-21T19:55:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:55:49.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:55:49.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:55:49.125 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:55:49.125 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:55:49.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:55:49.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:55:49.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -333.125703
2026-01-21T21:55:49.126 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:55:49.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.177/600.0
2026-01-21T21:55:50.726 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:50.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:50.744 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:50.744 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:51.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:55:51.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:55:51.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:55:51.129388    Obs time: 2026-01-21 19:50:16
2026-01-21T21:55:51.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:54:24.870612
2026-01-21T21:55:51.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86064
2026-01-21T21:55:51.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509325', 'update_OCS 17509325 ATTEMPTED', 'run_script setup_std_star_HD60753_17230572_13492_13538.json', 'run_script std_star_HD60753_17230572_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509325 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:55:51.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:55:51.295 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 285.109/600.0
2026-01-21T21:55:53.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 283.041/600.0
2026-01-21T21:55:53.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:53.748 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:53.748 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:53.748 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:55.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 280.973/600.0
2026-01-21T21:55:56.751 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:56.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:56.770 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:56.771 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:55:57.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 278.905/600.0
2026-01-21T21:55:58.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:55:59.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 276.874/600.0
2026-01-21T21:55:59.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:55:59.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:55:59.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:55:59.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:01.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 274.843/600.0
2026-01-21T21:56:02.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:02.799 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:56:02.799 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:02.799 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:56:03.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 272.777/600.0
2026-01-21T21:56:05.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 270.708/600.0
2026-01-21T21:56:05.802 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:05.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:56:05.824 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:05.824 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:07.765 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 268.641/600.0
2026-01-21T21:56:08.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:56:08.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:08.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:08.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:08.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:09.833 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 266.57/600.0
2026-01-21T21:56:11.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:11.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:56:11.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:11.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:56:11.902 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 264.502/600.0
2026-01-21T21:56:13.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 262.434/600.0
2026-01-21T21:56:14.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:14.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:56:14.868 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:14.868 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:16.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 260.366/600.0
2026-01-21T21:56:17.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:17.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:17.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:17.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:18.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 258.298/600.0
2026-01-21T21:56:18.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:56:20.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 256.266/600.0
2026-01-21T21:56:20.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:20.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-21T21:56:20.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:20.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T21:56:22.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 254.2/600.0
2026-01-21T21:56:23.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:23.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-21T21:56:23.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:23.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:24.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 252.131/600.0
2026-01-21T21:56:26.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 250.064/600.0
2026-01-21T21:56:26.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:26.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:26.930 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:26.930 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:28.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:56:28.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 247.994/600.0
2026-01-21T21:56:29.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:29.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:29.933 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:29.934 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:30.478 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 245.926/600.0
2026-01-21T21:56:32.509 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 243.859/600.0
2026-01-21T21:56:32.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:32.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:32.957 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:32.957 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:34.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 241.827/600.0
2026-01-21T21:56:35.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:35.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:35.961 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:35.961 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:36.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 239.759/600.0
2026-01-21T21:56:38.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:56:38.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 237.728/600.0
2026-01-21T21:56:38.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:38.983 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:38.983 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:38.983 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:40.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 235.661/600.0
2026-01-21T21:56:41.986 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:42.008 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:56:42.008 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:42.008 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:56:42.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 233.593/600.0
2026-01-21T21:56:44.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 231.525/600.0
2026-01-21T21:56:45.011 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:45.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:56:45.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:45.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:46.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 229.455/600.0
2026-01-21T21:56:48.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:48.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:48.034 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:48.034 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:48.183 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:56:48.184 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:56:39.093345
2026-01-21T21:56:48.184 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:56:39.093345
2026-01-21T21:56:48.184 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:56:48.184 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:56:48.184 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:56:48.184 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:56:48&start_after=2026-01-20T19:56:48&end_after=2026-01-21T19:56:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:56:48.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.316 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.322 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.327 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.327 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:56:48.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:56:48.332 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:56:48.332 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:56:48.332 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:56:48.332 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:56:48.332 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -392.332808
2026-01-21T21:56:48.333 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:56:48.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 227.425/600.0
2026-01-21T21:56:50.335 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:56:50.336 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:56:50.336 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:56:50.336687    Obs time: 2026-01-21 19:50:16
2026-01-21T21:56:50.336 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:53:25.663313
2026-01-21T21:56:50.336 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86005
2026-01-21T21:56:50.336 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509325', 'update_OCS 17509325 ATTEMPTED', 'run_script setup_std_star_HD60753_17230572_13492_13538.json', 'run_script std_star_HD60753_17230572_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509325 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:56:50.336 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:56:51.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 225.357/600.0
2026-01-21T21:56:51.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:51.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:56:51.057 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:51.057 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:56:53.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 223.326/600.0
2026-01-21T21:56:54.060 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:54.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:56:54.061 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:54.061 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:55.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 221.297/600.0
2026-01-21T21:56:57.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:56:57.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:56:57.081 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:56:57.081 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:56:57.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 219.229/600.0
2026-01-21T21:56:57.341 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:56:59.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 217.197/600.0
2026-01-21T21:57:00.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:00.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-21T21:57:00.101 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:00.101 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T21:57:01.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 215.166/600.0
2026-01-21T21:57:03.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:03.119 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.00099999999998
2026-01-21T21:57:03.119 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:03.119 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T21:57:03.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 213.098/600.0
2026-01-21T21:57:05.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 211.067/600.0
2026-01-21T21:57:06.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:06.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-21T21:57:06.122 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:06.122 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:07.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:57:07.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 209.012/600.0
2026-01-21T21:57:09.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:09.144 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:09.144 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:09.144 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:09.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 206.893/600.0
2026-01-21T21:57:11.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 204.862/600.0
2026-01-21T21:57:12.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:12.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:12.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:12.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:13.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 202.796/600.0
2026-01-21T21:57:15.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:15.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:15.166 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:15.166 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:15.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 200.764/600.0
2026-01-21T21:57:17.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:57:17.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 198.697/600.0
2026-01-21T21:57:18.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:18.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:18.187 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:18.187 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:19.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 196.629/600.0
2026-01-21T21:57:21.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:21.211 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:21.211 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:21.212 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:21.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 194.559/600.0
2026-01-21T21:57:23.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 192.529/600.0
2026-01-21T21:57:24.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:24.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:24.215 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:24.216 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:25.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 190.498/600.0
2026-01-21T21:57:27.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:27.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:27.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:27.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:27.364 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:57:27.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 188.43/600.0
2026-01-21T21:57:30.043 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 186.363/600.0
2026-01-21T21:57:30.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:30.239 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:30.239 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:30.239 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:32.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 184.293/600.0
2026-01-21T21:57:33.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:33.258 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:33.258 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:33.258 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:34.141 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 182.225/600.0
2026-01-21T21:57:36.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 180.194/600.0
2026-01-21T21:57:36.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:36.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:36.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:36.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:37.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:57:38.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 178.126/600.0
2026-01-21T21:57:39.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:39.295 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:39.295 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:39.295 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:40.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 176.058/600.0
2026-01-21T21:57:42.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:42.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:57:42.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:42.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:42.414 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 173.991/600.0
2026-01-21T21:57:44.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 171.921/600.0
2026-01-21T21:57:45.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:45.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:57:45.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:45.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:57:46.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 169.853/600.0
2026-01-21T21:57:47.382 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:57:47.399 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:57:39.302712
2026-01-21T21:57:47.399 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:57:39.302712
2026-01-21T21:57:47.399 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:57:47.399 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:57:47.399 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:57:47.399 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:57:47&start_after=2026-01-20T19:57:47&end_after=2026-01-21T19:57:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:57:47.519 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.523 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.523 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.524 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.525 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.529 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.531 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.532 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.533 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:57:47.536 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:57:47.537 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:57:47.537 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T21:57:47.537 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:57:47.537 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:50:16Z
2026-01-21T21:57:47.537 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -451.537551
2026-01-21T21:57:47.538 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:57:48.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:48.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:57:48.306 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:48.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:48.619 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.785/600.0
2026-01-21T21:57:49.540 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:57:49.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:57:49.561 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:57:49.561017    Obs time: 2026-01-21 19:50:16
2026-01-21T21:57:49.561 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:52:26.438983
2026-01-21T21:57:49.561 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85946
2026-01-21T21:57:49.561 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:50:16Z', 'guide_off', 'config_id 13538', 'config_status_id 17509325', 'update_OCS 17509325 ATTEMPTED', 'run_script setup_std_star_HD60753_17230572_13492_13538.json', 'run_script std_star_HD60753_17230572_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509325 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:58:32Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:57:49.561 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:57:50.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.717/600.0
2026-01-21T21:57:51.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:51.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-21T21:57:51.328 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:51.328 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-21T21:57:52.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 163.649/600.0
2026-01-21T21:57:54.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:54.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00100000000003
2026-01-21T21:57:54.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:54.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:57:54.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 161.618/600.0
2026-01-21T21:57:56.568 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:57:56.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 159.589/600.0
2026-01-21T21:57:57.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:57:57.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:57:57.361 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:57:57.361 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:57:58.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 157.557/600.0
2026-01-21T21:58:00.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:00.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:00.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:00.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:00.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 155.489/600.0
2026-01-21T21:58:02.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.421/600.0
2026-01-21T21:58:03.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:03.386 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:58:03.386 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:03.386 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:58:05.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.353/600.0
2026-01-21T21:58:06.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:06.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:58:06.405 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:06.405 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:06.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:58:07.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.285/600.0
2026-01-21T21:58:09.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.217/600.0
2026-01-21T21:58:09.408 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:09.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:09.409 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:09.409 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:11.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.147/600.0
2026-01-21T21:58:12.412 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:12.432 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:58:12.432 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:12.432 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:58:13.287 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.081/600.0
2026-01-21T21:58:15.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.049/600.0
2026-01-21T21:58:15.435 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:15.452 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:58:15.452 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:15.452 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:16.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:58:17.348 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.018/600.0
2026-01-21T21:58:18.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:18.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:18.454 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:18.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:19.379 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.989/600.0
2026-01-21T21:58:21.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 134.957/600.0
2026-01-21T21:58:21.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:21.458 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:21.458 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:21.458 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:23.478 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 132.889/600.0
2026-01-21T21:58:24.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:24.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T21:58:24.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:24.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T21:58:25.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 130.858/600.0
2026-01-21T21:58:26.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:58:27.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:27.483 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T21:58:27.483 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:27.483 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:27.540 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 128.829/600.0
2026-01-21T21:58:29.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 126.797/600.0
2026-01-21T21:58:30.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:30.487 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:30.487 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:30.487 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:31.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 124.729/600.0
2026-01-21T21:58:33.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:33.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:33.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:33.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:33.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 122.66/600.0
2026-01-21T21:58:35.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.592/600.0
2026-01-21T21:58:36.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:36.510 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:36.510 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:36.510 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:36.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:58:37.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.523/600.0
2026-01-21T21:58:39.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:39.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:39.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:39.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:39.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.457/600.0
2026-01-21T21:58:42.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.387/600.0
2026-01-21T21:58:42.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:42.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:42.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:42.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:44.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.319/600.0
2026-01-21T21:58:45.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:45.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:45.536 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:45.536 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:46.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.251/600.0
2026-01-21T21:58:46.613 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:58:46.613 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:58:39.501702
2026-01-21T21:58:46.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:58:39.501702
2026-01-21T21:58:46.613 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:58:46.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:58:46.614 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:58:46.614 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:58:46&start_after=2026-01-20T19:58:46&end_after=2026-01-21T19:58:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:58:46.729 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.730 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.731 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.732 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.732 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.733 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.734 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.735 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.737 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.738 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.739 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.740 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.740 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.742 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.743 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:58:46.745 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:58:46.745 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:58:46.746 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:58:46.746 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:58:46.746 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T21:58:46.746 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -14.746229
2026-01-21T21:58:46.747 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:58:48.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.182/600.0
2026-01-21T21:58:48.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:48.538 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:48.538 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:48.538 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:48.749 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:58:48.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:58:48.750 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:58:48.750077    Obs time: 2026-01-21 19:58:32
2026-01-21T21:58:48.750 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:43.249923
2026-01-21T21:58:48.750 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86383
2026-01-21T21:58:48.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509438', 'update_OCS 17509438 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230685_13465_13511.json', 'run_script SN2025pht_spec_17230685_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509438 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:58:48.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:58:50.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.114/600.0
2026-01-21T21:58:51.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:51.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:58:51.560 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:51.561 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:52.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.046/600.0
2026-01-21T21:58:54.389 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.978/600.0
2026-01-21T21:58:54.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:54.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-21T21:58:54.579 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:54.579 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T21:58:55.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:58:56.419 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.949/600.0
2026-01-21T21:58:57.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:58:57.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-21T21:58:57.583 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:58:57.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:58:58.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.917/600.0
2026-01-21T21:59:00.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.886/600.0
2026-01-21T21:59:00.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:00.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:59:00.601 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:00.601 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:59:02.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.818/600.0
2026-01-21T21:59:03.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:03.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:59:03.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:03.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:04.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.751/600.0
2026-01-21T21:59:05.765 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T21:59:06.608 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:06.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:06.624 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:06.624 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:06.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.681/600.0
2026-01-21T21:59:08.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.613/600.0
2026-01-21T21:59:09.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:09.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:09.628 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:09.628 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:10.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.545/600.0
2026-01-21T21:59:12.631 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:12.651 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:12.651 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:12.651 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:12.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.477/600.0
2026-01-21T21:59:14.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.408/600.0
2026-01-21T21:59:15.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:15.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:15.654 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:15.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:15.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T21:59:17.064 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.34/600.0
2026-01-21T21:59:18.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:18.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:59:18.676 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:18.676 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:59:19.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.273/600.0
2026-01-21T21:59:21.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.204/600.0
2026-01-21T21:59:21.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:21.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:59:21.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:21.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:23.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.135/600.0
2026-01-21T21:59:24.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:24.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:24.697 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:24.697 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:25.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.068/600.0
2026-01-21T21:59:25.782 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T21:59:27.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.001/600.0
2026-01-21T21:59:27.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:27.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:27.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:27.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:29.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.931/600.0
2026-01-21T21:59:30.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:30.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:30.768 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:30.768 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:31.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.862/600.0
2026-01-21T21:59:33.534 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.833/600.0
2026-01-21T21:59:33.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:33.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:33.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:33.772 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:35.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.801/600.0
2026-01-21T21:59:35.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T21:59:36.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:36.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:59:36.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:36.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:59:37.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.772/600.0
2026-01-21T21:59:39.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.741/600.0
2026-01-21T21:59:39.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:39.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:59:39.798 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:39.798 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:41.694 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.673/600.0
2026-01-21T21:59:42.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:42.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:42.819 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:42.819 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:43.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.641/600.0
2026-01-21T21:59:45.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.611/600.0
2026-01-21T21:59:45.799 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T21:59:45.800 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T21:59:39.703480
2026-01-21T21:59:45.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T21:59:39.703480
2026-01-21T21:59:45.800 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T21:59:45.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T21:59:45.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T21:59:45.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T19:59:45&start_after=2026-01-20T19:59:45&end_after=2026-01-21T19:59:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T21:59:45.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:45.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:45.821 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:45.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:45.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.930 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.933 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.937 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.939 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.941 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.942 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T21:59:45.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T21:59:45.944 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T21:59:45.944 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T21:59:45.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T21:59:45.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T21:59:45.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -73.94473
2026-01-21T21:59:45.945 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T21:59:47.861 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.542/600.0
2026-01-21T21:59:47.947 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T21:59:47.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T21:59:47.948 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 19:59:47.948391    Obs time: 2026-01-21 19:58:32
2026-01-21T21:59:47.948 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:44.051609
2026-01-21T21:59:47.948 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86324
2026-01-21T21:59:47.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509459', 'update_OCS 17509459 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230706_13465_13511.json', 'run_script SN2025pht_spec_17230706_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509459 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T21:59:47.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T21:59:48.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:48.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T21:59:48.844 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:48.844 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T21:59:49.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.476/600.0
2026-01-21T21:59:51.847 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:51.848 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T21:59:51.848 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:51.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:51.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.408/600.0
2026-01-21T21:59:54.028 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.34/600.0
2026-01-21T21:59:54.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:54.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:54.866 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:54.866 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:54.955 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T21:59:56.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.309/600.0
2026-01-21T21:59:57.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T21:59:57.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T21:59:57.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T21:59:57.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T21:59:58.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.277/600.0
2026-01-21T22:00:00.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.246/600.0
2026-01-21T22:00:00.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:00.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-21T22:00:00.874 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:00.874 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T22:00:02.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.178/600.0
2026-01-21T22:00:03.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:03.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.00099999999998
2026-01-21T22:00:03.878 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:03.878 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T22:00:04.257 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.149/600.0
2026-01-21T22:00:04.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:00:06.287 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.079/600.0
2026-01-21T22:00:06.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:06.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00099999999998
2026-01-21T22:00:06.897 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:06.897 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:00:08.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.048/600.0
2026-01-21T22:00:09.900 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:09.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:00:09.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:09.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:10.424 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.98/600.0
2026-01-21T22:00:12.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.912/600.0
2026-01-21T22:00:12.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:12.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:12.923 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:12.923 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:14.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.844/600.0
2026-01-21T22:00:14.973 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:00:15.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:15.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:15.927 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:15.927 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:16.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.775/600.0
2026-01-21T22:00:18.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.707/600.0
2026-01-21T22:00:18.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:18.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:18.953 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:18.953 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:20.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.639/600.0
2026-01-21T22:00:21.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:21.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:21.957 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:21.957 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:22.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.609/600.0
2026-01-21T22:00:24.826 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.578/600.0
2026-01-21T22:00:24.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:24.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:00:24.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:24.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:00:24.983 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:00:26.894 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.51/600.0
2026-01-21T22:00:27.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:27.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:00:27.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:27.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:28.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.441/600.0
2026-01-21T22:00:30.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:31.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:31.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:31.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:31.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.375/600.0
2026-01-21T22:00:33.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.305/600.0
2026-01-21T22:00:34.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:34.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:34.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:34.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:34.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:00:35.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.237/600.0
2026-01-21T22:00:37.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:37.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:37.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:37.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:37.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:39.266 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:40.028 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:40.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:40.029 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:40.029 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:41.297 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:43.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:43.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:00:43.049 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:43.049 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:00:43.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:45.001 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:00:45.020 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:00:39.903038
2026-01-21T22:00:45.021 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:00:39.903038
2026-01-21T22:00:45.021 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:00:45.021 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:00:45.021 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:00:45.021 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:00:45&start_after=2026-01-20T20:00:45&end_after=2026-01-21T20:00:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:00:45.139 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.140 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.142 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.142 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.143 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.154 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:00:45.155 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:00:45.156 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:00:45.156 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:00:45.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:00:45.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:00:45.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -133.156846
2026-01-21T22:00:45.157 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:00:45.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:46.052 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:46.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:00:46.073 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:46.073 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:47.158 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:00:47.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:00:47.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:00:47.175538    Obs time: 2026-01-21 19:58:32
2026-01-21T22:00:47.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:44.824462
2026-01-21T22:00:47.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86264
2026-01-21T22:00:47.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:00:47.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:00:47.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:49.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:49.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:49.100 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:49.100 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:49.419 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:51.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:52.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:52.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:00:52.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:52.104 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:00:53.480 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:54.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:00:55.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:55.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:00:55.106 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:55.106 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:55.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:57.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:58.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:00:58.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:00:58.129 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:00:58.129 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:00:59.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-21T22:00:59.886 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:00:59.886 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:00:59.907 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:01:01.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:01:01.573 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-21T22:01:01.573 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-21T22:01:01.573 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:01:01.573 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:01:01.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:01:01.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:01:01.573 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:01:01.573 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:01:01.573 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:01:01.573 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:01:01.584 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:01:01.585 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:01:01.585 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T22:01:01.585 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T22:01:01.585 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T22:01:01.755 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T22:01:02.774 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T22:01:03.795 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T22:01:04.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:01:04.816 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T22:01:05.836 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-21T22:01:06.879 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T22:01:07.880 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:01:07.931 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T22:01:08.932 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:01:08.933 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.61
2026-01-21T22:01:08.933 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:00:31
2026-01-21T22:01:08.933 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:00:31
2026-01-21T22:01:08.933 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T22:01:08.934 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08994511811023619
2026-01-21T22:01:08.936 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T22:01:08.936 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:01:08.936 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:01:08.936 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:01:08.947 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T22:01:09.947 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:01:09.947 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:01:09.947 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:01:11.001 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:01:13.003 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T22:01:13.003 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:01:13.003 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:01:13.003 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:01:13.003 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:01:13.005 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:01:13.005 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:01:13.007 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:01:13.134 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:01:13.134 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:01:13.136 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769025673.1365669
2026-01-21T22:01:13.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:01:13.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:01:14.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:14.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:14.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:14.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:14.200 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:01:17.028 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:17.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:17.029 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:17.029 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:18.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.603/60.0
2026-01-21T22:01:20.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:20.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:20.053 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:20.053 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:20.604 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.563/60.0
2026-01-21T22:01:22.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.534/60.0
2026-01-21T22:01:23.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:23.071 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-21T22:01:23.071 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:23.071 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-21T22:01:24.210 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:01:24.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.502/60.0
2026-01-21T22:01:26.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:26.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00100000000003
2026-01-21T22:01:26.093 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:26.093 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:01:26.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.472/60.0
2026-01-21T22:01:28.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.442/60.0
2026-01-21T22:01:29.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:29.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:01:29.112 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:29.113 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:30.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.412/60.0
2026-01-21T22:01:32.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:32.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:32.132 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:32.132 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:32.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.38/60.0
2026-01-21T22:01:34.218 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:01:34.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.35/60.0
2026-01-21T22:01:35.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:35.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:35.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:35.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:36.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.319/60.0
2026-01-21T22:01:38.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:38.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:38.154 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:38.154 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:38.879 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.288/60.0
2026-01-21T22:01:40.910 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.258/60.0
2026-01-21T22:01:41.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:41.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:01:41.158 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:41.158 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:01:42.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.228/60.0
2026-01-21T22:01:44.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:44.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:01:44.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:44.181 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:01:44.226 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:01:44.227 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:01:40.102804
2026-01-21T22:01:44.227 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:01:40.102804
2026-01-21T22:01:44.227 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:01:44.227 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:01:44.228 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:01:44.228 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:01:44&start_after=2026-01-20T20:01:44&end_after=2026-01-21T20:01:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:01:44.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.353 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.356 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:01:44.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:01:44.361 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:01:44.362 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:01:44.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:01:44.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:01:44.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -192.362128
2026-01-21T22:01:44.362 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:01:44.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.198/60.0
2026-01-21T22:01:46.363 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:01:46.380 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:01:46.380 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:01:46.380127    Obs time: 2026-01-21 19:58:32
2026-01-21T22:01:46.380 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:45.619873
2026-01-21T22:01:46.380 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86205
2026-01-21T22:01:46.380 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:01:46.380 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:01:47.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.166/60.0
2026-01-21T22:01:47.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:47.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:01:47.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:47.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:49.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.135/60.0
2026-01-21T22:01:50.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:50.208 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:50.208 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:50.208 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:51.063 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.105/60.0
2026-01-21T22:01:53.093 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.074/60.0
2026-01-21T22:01:53.211 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:53.212 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:53.212 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:53.212 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:53.387 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:01:55.124 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.045/60.0
2026-01-21T22:01:56.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:56.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:56.228 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:56.228 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:01:57.155 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.013/60.0
2026-01-21T22:01:59.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.982/60.0
2026-01-21T22:01:59.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:01:59.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:01:59.232 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:01:59.232 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:01.216 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.952/60.0
2026-01-21T22:02:02.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:02.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:02:02.254 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:02.263 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:02:03.246 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.922/60.0
2026-01-21T22:02:03.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:02:05.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:05.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.891/60.0
2026-01-21T22:02:05.283 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:02:05.283 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:05.284 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:07.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.86/60.0
2026-01-21T22:02:08.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:08.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:02:08.303 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:08.303 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:09.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.792/60.0
2026-01-21T22:02:11.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:11.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:02:11.305 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:11.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:02:11.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.736/60.0
2026-01-21T22:02:13.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:02:13.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:14.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:14.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:02:14.330 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:14.330 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:15.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:17.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:17.334 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:02:17.334 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:17.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:17.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:19.693 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:20.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:20.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:02:20.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:20.355 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:02:21.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:23.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:23.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:02:23.376 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:23.376 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:23.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:02:23.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:25.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:26.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:26.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:02:26.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:26.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:27.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:29.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:29.398 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:02:29.398 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:29.398 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:02:29.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:31.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:32.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:32.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:02:32.420 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:32.420 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:33.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:02:33.907 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:35.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:35.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:02:35.422 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:35.422 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:02:35.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 2/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:02:36.502 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:02:36.502 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:02:36.523 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:02:38.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:02:38.425 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-21T22:02:38.425 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-21T22:02:38.425 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:02:38.425 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:02:38.425 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:02:38.425 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:02:38.425 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:02:38.425 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:02:38.425 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:02:38.425 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:02:38.436 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:02:38.437 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:02:38.437 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T22:02:38.438 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T22:02:38.438 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T22:02:38.477 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T22:02:39.497 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T22:02:40.518 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T22:02:41.592 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T22:02:42.593 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:02:42.645 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T22:02:43.433 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:02:43.434 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:02:40.304293
2026-01-21T22:02:43.434 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:02:40.304293
2026-01-21T22:02:43.434 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:02:43.434 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:02:43.434 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:02:43.434 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:02:43&start_after=2026-01-20T20:02:43&end_after=2026-01-21T20:02:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:02:43.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:02:43.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:02:43.574 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:02:43.574 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:02:43.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:02:43.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:02:43.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -251.575112
2026-01-21T22:02:43.576 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:02:43.646 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:02:43.647 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.68
2026-01-21T22:02:43.647 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:02:08
2026-01-21T22:02:43.647 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:02:08
2026-01-21T22:02:43.647 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T22:02:43.647 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08998409448818896
2026-01-21T22:02:43.650 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T22:02:43.651 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:02:43.651 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:02:43.651 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:02:43.698 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T22:02:44.699 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:02:44.699 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:02:44.699 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:02:45.577 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:02:45.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:02:45.578 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:02:45.578164    Obs time: 2026-01-21 19:58:32
2026-01-21T22:02:45.578 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:46.421836
2026-01-21T22:02:45.578 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86146
2026-01-21T22:02:45.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:02:45.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:02:45.740 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:02:47.741 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T22:02:47.741 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:02:47.742 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:02:47.742 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:02:47.742 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:02:47.744 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:02:47.744 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:02:47.745 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:02:47.847 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:02:47.848 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:02:47.849 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769025767.849727
2026-01-21T22:02:48.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:02:48.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:02:48.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:48.763 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:02:48.763 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:48.763 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:51.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:51.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:02:51.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:51.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:52.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:02:53.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.553/60.0
2026-01-21T22:02:54.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:54.791 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:02:54.791 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:54.791 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:02:55.367 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.515/60.0
2026-01-21T22:02:57.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.483/60.0
2026-01-21T22:02:57.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:02:57.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:02:57.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:02:57.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:02:59.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.452/60.0
2026-01-21T22:03:00.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:00.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:00.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:00.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:01.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.422/60.0
2026-01-21T22:03:02.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:03:03.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.391/60.0
2026-01-21T22:03:03.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:03.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:03.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:03.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:05.519 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.361/60.0
2026-01-21T22:03:06.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:06.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:06.840 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:06.840 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:07.549 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.33/60.0
2026-01-21T22:03:09.580 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.3/60.0
2026-01-21T22:03:09.843 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:09.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:09.844 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:09.844 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:11.773 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.27/60.0
2026-01-21T22:03:12.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:03:12.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:12.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:03:12.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:12.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:03:13.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.078/60.0
2026-01-21T22:03:15.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.033/60.0
2026-01-21T22:03:15.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:15.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:03:15.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:15.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:17.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.002/60.0
2026-01-21T22:03:18.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:18.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:18.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:18.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:19.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.983/60.0
2026-01-21T22:03:21.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:21.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:03:21.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:21.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:03:21.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.953/60.0
2026-01-21T22:03:22.613 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:03:23.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.922/60.0
2026-01-21T22:03:24.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:24.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:03:24.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:24.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:26.127 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.894/60.0
2026-01-21T22:03:27.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:27.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:27.922 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:27.922 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:28.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.722/60.0
2026-01-21T22:03:30.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.679/60.0
2026-01-21T22:03:30.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:30.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:03:30.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:30.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:03:32.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.648/60.0
2026-01-21T22:03:32.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:03:33.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:33.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:03:33.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:33.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:34.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.619/60.0
2026-01-21T22:03:36.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.561/60.0
2026-01-21T22:03:36.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:36.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:36.968 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:36.968 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:38.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.531/60.0
2026-01-21T22:03:39.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:39.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:03:39.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:39.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:03:40.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.463/60.0
2026-01-21T22:03:42.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.395/60.0
2026-01-21T22:03:42.631 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:03:42.632 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:03:40.500897
2026-01-21T22:03:42.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:03:40.500897
2026-01-21T22:03:42.632 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:03:42.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:03:42.632 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:03:42.632 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:03:42&start_after=2026-01-20T20:03:42&end_after=2026-01-21T20:03:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:03:42.753 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.753 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.754 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.756 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.756 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.757 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.758 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.759 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.760 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.762 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.764 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:03:42.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:03:42.770 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:03:42.770 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:03:42.770 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:03:42.770 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:03:42.771 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -310.771029
2026-01-21T22:03:42.788 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:03:42.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:42.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:03:42.970 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:42.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:44.515 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.366/60.0
2026-01-21T22:03:44.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:03:44.811 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:03:44.811 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:03:44.811207    Obs time: 2026-01-21 19:58:32
2026-01-21T22:03:44.811 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:54:47.188793
2026-01-21T22:03:44.811 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86087
2026-01-21T22:03:44.811 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:03:44.811 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:03:45.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:45.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:45.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:45.995 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:46.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.334/60.0
2026-01-21T22:03:48.576 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:03:48.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:49.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:03:49.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:49.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:03:50.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:03:51.817 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:03:52.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:52.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:03:52.022 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:52.022 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:52.625 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:03:54.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:03:55.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:55.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:03:55.049 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:55.049 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:03:56.686 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:03:58.052 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:03:58.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:03:58.053 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:03:58.053 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:03:58.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:00.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:01.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:01.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:04:01.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:01.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:01.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:04:02.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:04.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:04.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:04.078 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:04.078 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:04.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:06.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:07.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:07.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:04:07.100 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:07.100 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:04:08.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:10.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:10.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:04:10.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:10.104 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:10.230 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:04:10.230 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:04:10.232 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:04:10.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 3/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:04:11.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:04:13.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:04:13.105 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-21T22:04:13.105 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-21T22:04:13.105 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:04:13.105 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:04:13.105 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:04:13.105 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:04:13.105 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:04:13.105 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:04:13.105 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:04:13.105 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:04:13.116 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:04:13.117 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:04:13.117 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T22:04:13.117 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T22:04:13.117 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T22:04:13.182 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T22:04:14.203 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T22:04:15.224 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T22:04:16.244 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-21T22:04:17.287 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T22:04:18.287 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:04:18.340 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T22:04:19.341 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:04:19.342 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 21.05
2026-01-21T22:04:19.342 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:03:44
2026-01-21T22:04:19.342 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:03:44
2026-01-21T22:04:19.342 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T22:04:19.342 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0920033464566929
2026-01-21T22:04:19.345 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T22:04:19.345 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:04:19.345 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:04:19.345 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:04:19.393 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T22:04:20.394 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:04:20.394 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:04:20.394 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:04:21.430 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:04:21.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:04:23.454 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT 2026ayt', comment='The object name')]
2026-01-21T22:04:23.454 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:04:23.454 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:04:23.454 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:04:23.454 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:04:23.456 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:04:23.456 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:04:23.458 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:04:23.575 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:04:23.575 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:04:23.577 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769025863.5773365
2026-01-21T22:04:23.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:04:23.955 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:04:24.455 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:24.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:04:24.475 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:24.475 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:04:27.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:27.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:04:27.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:27.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:29.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-21T22:04:30.500 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:30.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:30.519 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:30.519 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:31.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.552/60.0
2026-01-21T22:04:31.849 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:04:33.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.521/60.0
2026-01-21T22:04:33.522 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:33.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:04:33.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:33.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:04:35.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.49/60.0
2026-01-21T22:04:36.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:36.544 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:04:36.544 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:36.544 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:37.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.459/60.0
2026-01-21T22:04:39.230 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.403/60.0
2026-01-21T22:04:39.547 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:39.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:39.570 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:39.570 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:41.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.346/60.0
2026-01-21T22:04:41.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:04:41.877 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:04:40.701350
2026-01-21T22:04:41.877 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:04:40.701350
2026-01-21T22:04:41.877 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:04:41.877 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:04:41.877 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:04:41.877 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:04:41&start_after=2026-01-20T20:04:41&end_after=2026-01-21T20:04:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:04:41.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:41.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:41.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:41.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:41.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:41.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:41.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:42.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:42.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:42.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:42.005 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:42.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:42.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:42.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:42.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:42.010 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:04:42.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:04:42.012 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:04:42.012 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:04:42.012 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:04:42.012 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:04:42.012 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -370.012872
2026-01-21T22:04:42.013 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:04:42.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:42.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:42.574 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:42.574 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:43.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.316/60.0
2026-01-21T22:04:44.014 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:04:44.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:04:44.032 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:04:44.032557    Obs time: 2026-01-21 19:58:32
2026-01-21T22:04:44.032 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:53:47.967443
2026-01-21T22:04:44.032 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86027
2026-01-21T22:04:44.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:04:44.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:04:45.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.285/60.0
2026-01-21T22:04:45.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:45.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:45.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:45.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:47.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.254/60.0
2026-01-21T22:04:48.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:48.623 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:48.623 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:48.623 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:49.384 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.226/60.0
2026-01-21T22:04:51.038 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:04:51.414 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.194/60.0
2026-01-21T22:04:51.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:51.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:04:51.642 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:51.642 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:04:53.445 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.165/60.0
2026-01-21T22:04:54.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:54.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:04:54.646 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:54.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:55.475 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.132/60.0
2026-01-21T22:04:57.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:04:57.669 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.102/60.0
2026-01-21T22:04:57.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:04:57.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:04:57.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:04:59.712 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.908/60.0
2026-01-21T22:05:00.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:00.674 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:00.674 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:00.674 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:01.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:05:01.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.864/60.0
2026-01-21T22:05:03.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:03.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:03.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:03.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:03.774 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.834/60.0
2026-01-21T22:05:05.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.803/60.0
2026-01-21T22:05:06.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:06.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:06.721 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:06.721 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:07.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.773/60.0
2026-01-21T22:05:09.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:09.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:05:09.740 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:09.740 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:05:09.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.742/60.0
2026-01-21T22:05:11.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:05:11.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.711/60.0
2026-01-21T22:05:12.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:12.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:05:12.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:12.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:13.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.682/60.0
2026-01-21T22:05:15.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:15.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:15.777 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:15.777 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:15.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.65/60.0
2026-01-21T22:05:17.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.62/60.0
2026-01-21T22:05:18.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:18.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:18.781 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:18.781 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:20.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.589/60.0
2026-01-21T22:05:21.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:05:21.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:21.803 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:21.803 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:21.803 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:22.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.56/60.0
2026-01-21T22:05:24.079 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:24.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:24.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:24.821 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:24.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:26.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:27.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:27.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:05:27.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:27.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:05:28.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:30.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:30.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:30.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:05:30.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:30.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:31.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:05:32.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:33.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:33.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:33.868 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:33.868 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:34.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:36.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:36.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:36.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:36.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:36.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:38.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:39.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:39.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:39.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:39.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:40.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:41.080 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:05:41.096 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:05:40.902956
2026-01-21T22:05:41.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:05:40.902956
2026-01-21T22:05:41.096 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:05:41.096 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:05:41.096 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:05:41.096 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:05:41&start_after=2026-01-20T20:05:41&end_after=2026-01-21T20:05:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:05:41.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.226 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.230 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.233 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:05:41.238 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:05:41.239 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:05:41.239 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:05:41.239 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:05:41.239 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:05:41.239 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -429.239371
2026-01-21T22:05:41.240 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:05:42.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:42.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:42.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:05:42.907 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:42.907 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:05:43.241 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:05:43.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:05:43.242 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:05:43.242207    Obs time: 2026-01-21 19:58:32
2026-01-21T22:05:43.242 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:52:48.757793
2026-01-21T22:05:43.242 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85968
2026-01-21T22:05:43.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:05:43.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:05:44.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:05:45.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:05:45.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:05:45.929 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:05:45.929 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:05:46.092 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:05:46.093 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:05:46.094 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:05:48.932 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:05:48.932 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-21T22:05:48.932 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-21T22:05:48.932 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:05:48.932 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:05:48.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:05:48.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:05:48.932 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:05:48.933 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:05:48.933 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:05:48.933 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:05:48.942 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:05:48.944 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:05:48.944 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T22:05:48.944 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:05:48.944 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:05:49.122 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T22:05:50.142 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T22:05:50.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:05:51.162 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T22:05:52.182 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T22:05:53.203 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T22:05:54.223 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T22:05:55.244 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T22:05:56.265 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 8
2026-01-21T22:05:57.336 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:05:58.337 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T22:05:58.337 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T22:05:58.386 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:05:58.386 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:05:58.426 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:05:59.427 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:05:59.517 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:06:00.258 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:06:00.518 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:06:00.520 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.69
2026-01-21T22:06:00.520 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:05:20
2026-01-21T22:06:00.520 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:05:20
2026-01-21T22:06:00.520 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:06:00.520 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0919438582677165
2026-01-21T22:06:00.523 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T22:06:00.523 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-21T22:06:00.524 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-21T22:06:01.581 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:06:03.602 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-21T22:06:03.602 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:06:03.602 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:06:03.602 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:06:03.602 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:06:03.604 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:06:03.604 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:06:03.606 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:06:03.877 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:06:03.877 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:06:03.878 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769025963.8789165
2026-01-21T22:06:04.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:06:04.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:06:04.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:06:04.620 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:06:04.620 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:06:04.620 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:06:07.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:06:07.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:06:07.640 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:06:07.640 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:06:09.252 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT_2026ayt_17230119_13499_13545.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-21T22:06:10.142 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:06:10.142 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:06:10.159 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:06:10.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:06:10.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:06:11.255 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-21T22:06:11.255 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:06:11.255 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:06:11.307 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:06:11.307 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script AT_2026ayt_17230119_13499_13545.json was run successfully
2026-01-21T22:06:11.307 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:06:11.307 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:06:11.307 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:06:11.307 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:06:11.307 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:06:11.307 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:06:11.307 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:06:11.808 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:06:11.808 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:06:11.808 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:06:11.808 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:06:11.808 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:06:11.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:06:11.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:06:11.808 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:06:11.808 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:06:11.810 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:35.0976   Targ dec = -32:04:47.0388
2026-01-21T22:06:11.810 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:06:11.810 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:06:11.810 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:06:11.817 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:06:11.817 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:06:11.817 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:06:11.817 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:06:12.862 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:06:14.864 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:06:14.864 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:06:14.864 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:06:15.311 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:06:15.311 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:06:15.311 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17508872 COMPLETED 13545 reason
2026-01-21T22:06:15.311 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17508872 COMPLETED 13545 reason
2026-01-21T22:06:15.311 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:06:15.311 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:06:15.311 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:06:15.311 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:06:15.311 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:06:15.311 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:06:18.314 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:06:18.314 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:06:20.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:06:20.316 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:06:20.316 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:06:20.316 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T22:06:20.316 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T22:06:20.316 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T22:06:20.319 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T22:06:20.319 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T19:50:16Z
2026-01-21T22:06:20.319 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:06:20.319 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:06:20.319 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:06:20.319 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:06:20.319 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:06:20.319 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:06:20.319 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:06:20.820 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:06:20.820 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:06:20.820 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:06:20.820 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:06:20.820 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:06:20.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:06:20.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:06:20.820 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:06:20.820 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:06:20.822 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:35.16132   Targ dec = -32:04:46.452
2026-01-21T22:06:20.822 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:06:20.822 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:06:20.822 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:06:20.828 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:06:20.828 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:06:20.828 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:06:20.828 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:06:21.886 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:06:23.888 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:06:23.889 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:06:23.889 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:06:24.323 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:06:24.323 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:06:24.323 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T22:06:24.323 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T22:06:24.323 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T22:06:24.323 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17508872
2026-01-21T22:06:24.323 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T22:06:24.323 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T22:06:24.323 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T19:47:57', 'end': '2026-01-21T20:06:24', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1107.0', 'events': {}}} with config status ID 17508872
2026-01-21T22:06:24.447 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:06:24.447 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:28:53Z', 'guide_off', 'config_id 13545', 'config_status_id 17508872', 'update_OCS 17508872 ATTEMPTED', 'run_script setup_AT_2026ayt_17230119_13499_13545.json', 'run_script AT_2026ayt_17230119_13499_13545.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17508872 COMPLETED 13545 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T19:50:16Z', 'run_script arc_flat_lamp_off.json'] at time 22:06:24
2026-01-21T22:06:30.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:06:40.293 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:06:40.313 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:05:40.902956
2026-01-21T22:06:40.313 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:05:40.902956
2026-01-21T22:06:40.313 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:06:40.313 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:06:40.313 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:06:40.313 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:06:40&start_after=2026-01-20T20:06:40&end_after=2026-01-21T20:06:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:06:40.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:06:40.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:06:40.449 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:06:40.449 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:06:40.449 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:06:40.449 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T19:58:32Z
2026-01-21T22:06:40.449 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -488.449311
2026-01-21T22:06:40.450 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:06:42.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:06:42.473 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:06:42.473 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:06:42.473969    Obs time: 2026-01-21 19:58:32
2026-01-21T22:06:42.474 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:51:49.526031
2026-01-21T22:06:42.474 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85909
2026-01-21T22:06:42.474 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:06:42.474 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T22:06:42.474 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T22:06:42.474 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T22:06:42.474 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T22:06:42.474 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:06:42.474 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:06:42.475 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:06:42.475 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:06:42.475 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:06:42.475 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:06:45.478 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:06:45.478 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:06:47.480 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:06:47.481 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:06:47.481 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T19:58:32Z
2026-01-21T22:06:47.481 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T19:58:32Z
2026-01-21T22:06:47.481 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:06:47.481 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:06:47.481 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:06:47.481 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:06:47.481 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:06:47.481 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:06:49.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:06:50.484 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:06:50.484 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:06:52.486 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:06:52.486 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13511
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13511
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17509480
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17509480
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17509480 ATTEMPTED
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17509480 ATTEMPTED
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 4.69135, 'targ_dec': -2.865447, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '04:41:28.86', 'targ_dec': '-02:51:55.61', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_SN2025pht_spec_17230727_13465_13511.json'}
2026-01-21T22:06:52.535 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:06:52.535 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17509480
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T22:06:52.535 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17509480
2026-01-21T22:06:52.615 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:06:53.036 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:06:53.036 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_SN2025pht_spec_17230727_13465_13511.json 1 times
2026-01-21T22:06:53.036 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:06:53.038 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T22:06:53.038 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T22:06:53.038 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T22:06:56.045 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:06:57.073 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:06:58.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:06:59.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:06:59.491 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:07:00.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:01.155 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:02.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:03.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:04.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:05.237 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:06.255 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:07.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:08.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:09.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:09.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:07:10.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:11.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:12.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:13.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:14.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:15.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:16.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:17.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:18.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:19.511 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:07:19.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:20.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:21.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:22.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:23.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:24.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:25.686 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:26.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:27.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:28.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:29.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:07:29.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:30.788 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:31.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:32.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:33.842 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:34.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:07:35.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T22:07:35.882 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  4.69171223669871 is close enough to target ra = 4.69135
2026-01-21T22:07:35.882 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -2.86414549363771 is close enough to target dec = -2.865447
2026-01-21T22:07:35.882 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T22:07:35.882 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:07:35.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:07:35.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:07:35.882 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:07:35.882 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T22:07:35.883 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T22:07:35.893 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:07:35.893 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:07:35.964 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:07:36.965 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:07:36.965 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:07:37.017 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:07:38.018 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:07:38.069 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:07:39.071 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:07:39.072 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.69
2026-01-21T22:07:39.072 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:06:57
2026-01-21T22:07:39.072 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:06:57
2026-01-21T22:07:39.072 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:07:39.072 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0919438582677165
2026-01-21T22:07:39.075 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T22:07:39.075 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T22:07:39.076 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T22:07:39.083 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:07:39.083 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:07:39.122 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:07:39.532 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:07:39.551 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:06:41.102315
2026-01-21T22:07:39.551 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:06:41.102315
2026-01-21T22:07:39.551 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:07:39.551 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:07:39.552 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:07:39.552 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:07:39&start_after=2026-01-20T20:07:39&end_after=2026-01-21T20:07:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:07:39.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.679 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.680 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.682 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.683 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.686 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.691 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:07:39.693 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:07:39.694 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:07:39.694 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:07:39.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:07:39.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:07:39.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1446.305155
2026-01-21T22:07:39.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T22:07:40.123 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:07:40.123 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:07:40.138 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:07:41.139 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:07:41.191 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:07:42.192 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:07:42.193 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.69
2026-01-21T22:07:42.193 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:06:57
2026-01-21T22:07:42.193 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:06:57
2026-01-21T22:07:42.193 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:07:42.193 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0919438582677165
2026-01-21T22:07:47.233 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T22:07:47.233 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:07:47.233 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:07:47.233 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:07:47.233 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:07:47.234 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:07:47.236 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:07:47.236 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:07:47.237 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:07:47.359 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:07:47.359 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:07:47.361 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769026067.361252
2026-01-21T22:07:48.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:07:52.652 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:07:52.653 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:07:52.654 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:07:52.741 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T22:07:56.744 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T22:07:56.744 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T22:07:58.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:08:06.795 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T22:08:06.795 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T22:08:06.795 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 04:41:28.86 = 253332.90000000002 arcseconds
2026-01-21T22:08:06.795 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -02:51:55.61 = -10315.61 arcseconds
2026-01-21T22:08:06.795 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T22:08:06.815 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T22:08:06.815 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.354
2026-01-21T22:08:06.815 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T22:08:06.815 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (04:41:30.284, -02:51:54.109).
2026-01-21T22:08:06.815 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  04 41 30.284  -02 51 54.109 .
2026-01-21T22:08:06.815 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 04 41 30.284  -02 51 54.109 .
2026-01-21T22:08:06.815 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 253354.26
2026-01-21T22:08:06.815 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -10314.109
2026-01-21T22:08:07.026 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T22:08:08.724 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:08:12.032 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T22:08:12.032 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:08:12.032 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:08:12.032 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:08:12.033 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:08:12.033 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:08:12.035 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:08:12.035 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:08:12.036 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:08:12.180 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:08:12.180 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:08:12.182 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769026092.1821363
2026-01-21T22:08:13.534 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:08:16.442 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:08:16.442 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:08:16.444 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:08:16.540 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T22:08:18.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:08:20.545 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T22:08:28.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:08:30.597 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T22:08:30.597 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T22:08:30.597 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 04:41:28.86 = 253332.90000000002 arcseconds
2026-01-21T22:08:30.597 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -02:51:55.61 = -10315.61 arcseconds
2026-01-21T22:08:30.597 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T22:08:30.618 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T22:08:30.618 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.442
2026-01-21T22:08:30.618 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T22:08:30.618 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (04:41:25.020, -02:54:37.551).
2026-01-21T22:08:30.618 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  04 41 25.020  -02 54 37.551 .
2026-01-21T22:08:30.618 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 04 41 25.020  -02 54 37.551 .
2026-01-21T22:08:30.618 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 253275.30000000002
2026-01-21T22:08:30.618 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -10477.551
2026-01-21T22:08:30.829 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T22:08:35.851 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T22:08:35.851 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:08:35.860 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:08:35.860 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:08:35.860 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:08:35.860 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:08:35.862 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:08:35.862 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:08:35.864 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:08:36.006 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:08:36.007 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:08:36.008 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769026116.0086973
2026-01-21T22:08:37.362 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:08:38.754 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:08:38.755 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:07:41.306320
2026-01-21T22:08:38.755 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:07:41.306320
2026-01-21T22:08:38.755 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:08:38.755 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:08:38.756 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:08:38.756 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:08:38&start_after=2026-01-20T20:08:38&end_after=2026-01-21T20:08:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:08:38.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.891 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.893 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.901 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.901 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.904 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:08:38.906 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:08:38.907 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:08:38.907 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:08:38.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:08:38.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:08:38.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1387.092219
2026-01-21T22:08:38.907 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T22:08:40.268 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:08:40.268 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:08:40.289 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:08:40.368 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T22:08:46.391 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:08:46.391 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:08:46.391 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:08:46.391 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:08:46.391 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:08:46.393 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:08:46.393 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:08:46.395 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:08:46.551 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:08:46.551 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:08:46.552 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769026126.5527995
2026-01-21T22:08:47.893 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:08:47.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:08:50.812 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:08:50.812 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:08:50.814 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:08:50.898 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T22:08:56.593 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2437  9946  14.3 to host 127.0.0.1 on port 12360
2026-01-21T22:08:56.593 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:08:56.593 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:08:57.956 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:08:59.596 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2437  9946  14.3
2026-01-21T22:08:59.597 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2437  9946  14.3
2026-01-21T22:09:01.599 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:09:07.966 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:09:17.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:09:27.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:09:37.997 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:09:37.998 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:08:41.507812
2026-01-21T22:09:37.998 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:08:41.507812
2026-01-21T22:09:37.999 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:09:37.999 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:09:37.999 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:09:37.999 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:09:37&start_after=2026-01-20T20:09:37&end_after=2026-01-21T20:09:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:09:38.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.125 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.130 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.131 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.132 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.133 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.134 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:09:38.137 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:09:38.138 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:09:38.138 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:09:38.138 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:09:38.138 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:09:38.138 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1327.861437
2026-01-21T22:09:38.138 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T22:09:40.638 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T22:09:40.638 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:09:40.638 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:09:43.641 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T22:09:43.641 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T22:09:45.643 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:09:45.643 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:09:45.692 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:09:45.692 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:09:45.692 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:09:45.692 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:09:45.692 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:09:45.692 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:09:46.713 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:09:47.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:09:48.715 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:09:48.716 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:09:48.716 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:09:48.821 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:09:48.821 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_SN2025pht_spec_17230727_13465_13511.json was run successfully
2026-01-21T22:09:48.821 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:09:48.821 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:09:48.821 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:09:48.821 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script SN2025pht_spec_17230727_13465_13511.json
2026-01-21T22:09:48.821 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'SN2025pht', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'FAST', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '04:41:28.86', 'targ_dec': '-02:51:55.61', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 1500000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'SN2025pht_spec_17230727_13465_13511.json'}
2026-01-21T22:09:48.821 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:09:48.821 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:09:49.322 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:09:49.322 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script SN2025pht_spec_17230727_13465_13511.json 1 times
2026-01-21T22:09:49.322 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-21T22:09:49.322 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:09:49.322 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:09:49.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:09:49.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:09:49.322 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:09:49.322 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:09:49.322 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:09:49.322 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:09:49.332 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:09:49.333 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:09:49.333 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T22:09:49.333 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:09:49.333 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:09:49.373 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:09:50.374 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T22:09:50.374 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T22:09:50.374 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:09:50.374 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:09:50.426 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:09:51.427 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:09:51.478 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:09:52.480 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:09:52.481 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.66
2026-01-21T22:09:52.481 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:09:05
2026-01-21T22:09:52.481 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:09:05
2026-01-21T22:09:52.481 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:09:52.482 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09196204724409447
2026-01-21T22:09:52.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T22:09:52.485 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:09:52.485 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:09:53.542 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:09:55.566 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='04:41:28.86', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-02:51:55.61', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025pht', comment='The object name')]
2026-01-21T22:09:55.566 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:09:55.566 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:09:55.566 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:09:55.566 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:09:55.568 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:09:55.568 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:09:55.570 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:09:55.679 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:09:55.679 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:09:55.681 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769026195.681587
2026-01-21T22:09:56.067 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:09:56.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:09:56.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:09:56.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:09:56.588 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:09:56.588 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:09:57.158 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:09:59.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:09:59.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:09:59.606 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:09:59.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:01.169 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1494.569/1500.0
2026-01-21T22:10:02.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:02.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:02.626 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:02.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:03.218 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1492.513/1500.0
2026-01-21T22:10:05.252 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1490.463/1500.0
2026-01-21T22:10:05.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:05.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:05.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:05.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:07.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:10:07.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1488.431/1500.0
2026-01-21T22:10:08.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:08.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:08.667 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:08.667 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:09.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1486.375/1500.0
2026-01-21T22:10:11.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1484.342/1500.0
2026-01-21T22:10:11.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:11.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:11.671 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:11.671 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:13.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1482.287/1500.0
2026-01-21T22:10:14.674 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:14.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:14.676 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:14.676 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:15.510 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1480.221/1500.0
2026-01-21T22:10:17.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:10:17.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1478.172/1500.0
2026-01-21T22:10:17.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:17.696 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:17.696 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:17.696 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:19.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1476.117/1500.0
2026-01-21T22:10:20.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:20.699 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:10:20.699 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:20.699 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:10:21.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1474.063/1500.0
2026-01-21T22:10:23.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:23.708 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1472.012/1500.0
2026-01-21T22:10:23.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0010000000000047748
2026-01-21T22:10:23.718 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:23.718 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:10:25.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1469.974/1500.0
2026-01-21T22:10:26.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:26.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:10:26.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:26.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:27.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:10:27.802 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1467.914/1500.0
2026-01-21T22:10:29.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:29.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:29.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:29.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:29.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1465.88/1500.0
2026-01-21T22:10:31.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1463.827/1500.0
2026-01-21T22:10:32.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:32.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:32.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:32.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:33.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1461.748/1500.0
2026-01-21T22:10:35.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:35.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:35.786 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:35.787 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:36.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1459.683/1500.0
2026-01-21T22:10:37.197 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:10:37.213 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:09:41.728705
2026-01-21T22:10:37.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:09:41.728705
2026-01-21T22:10:37.213 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:10:37.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:10:37.213 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:10:37.213 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:10:37&start_after=2026-01-20T20:10:37&end_after=2026-01-21T20:10:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:10:37.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.335 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.337 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.340 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.342 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:10:37.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:10:37.350 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:10:37.350 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:10:37.350 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:10:37.350 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:10:37.350 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1268.649341
2026-01-21T22:10:37.350 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T22:10:38.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1457.643/1500.0
2026-01-21T22:10:38.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:38.791 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:38.791 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:38.791 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:40.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1455.578/1500.0
2026-01-21T22:10:41.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:41.816 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:10:41.816 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:41.817 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:10:42.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1453.512/1500.0
2026-01-21T22:10:44.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1451.468/1500.0
2026-01-21T22:10:44.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:44.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:10:44.835 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:44.835 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:46.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1449.425/1500.0
2026-01-21T22:10:46.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:10:47.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:47.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:47.856 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:47.856 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:48.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1447.346/1500.0
2026-01-21T22:10:50.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1445.274/1500.0
2026-01-21T22:10:50.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:50.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:50.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:50.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:52.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1443.209/1500.0
2026-01-21T22:10:53.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:53.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:53.885 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:53.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:54.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1441.142/1500.0
2026-01-21T22:10:56.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:10:56.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1439.099/1500.0
2026-01-21T22:10:56.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:56.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:56.891 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:56.891 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:10:58.705 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1437.053/1500.0
2026-01-21T22:10:59.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:10:59.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:10:59.913 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:10:59.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:00.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1434.978/1500.0
2026-01-21T22:11:02.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1432.906/1500.0
2026-01-21T22:11:02.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:02.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:02.941 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:02.941 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:04.913 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1430.84/1500.0
2026-01-21T22:11:05.944 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:05.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:05.966 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:05.966 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:06.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:11:06.952 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1428.77/1500.0
2026-01-21T22:11:08.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:08.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:08.971 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:08.971 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:08.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1426.729/1500.0
2026-01-21T22:11:11.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1424.703/1500.0
2026-01-21T22:11:11.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:11.992 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:11.992 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:11.992 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:13.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1422.675/1500.0
2026-01-21T22:11:14.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:14.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:14.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:14.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:15.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1420.635/1500.0
2026-01-21T22:11:16.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:11:17.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1418.507/1500.0
2026-01-21T22:11:18.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:18.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:18.024 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:18.024 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:19.314 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1416.428/1500.0
2026-01-21T22:11:21.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:21.044 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:21.044 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:21.044 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:21.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1414.367/1500.0
2026-01-21T22:11:23.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1412.291/1500.0
2026-01-21T22:11:24.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:24.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:11:24.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:24.071 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:11:25.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1410.252/1500.0
2026-01-21T22:11:26.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:11:27.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:27.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:11:27.076 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:27.076 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:27.561 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1408.181/1500.0
2026-01-21T22:11:29.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1406.12/1500.0
2026-01-21T22:11:30.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:30.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:30.100 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:30.100 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:31.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1404.06/1500.0
2026-01-21T22:11:33.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:33.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:33.106 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:33.106 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:33.867 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1401.951/1500.0
2026-01-21T22:11:35.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1399.815/1500.0
2026-01-21T22:11:36.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:36.131 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:36.131 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:36.132 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:36.413 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:11:36.414 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:10:41.928272
2026-01-21T22:11:36.414 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:10:41.928272
2026-01-21T22:11:36.414 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:11:36.414 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:11:36.414 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:11:36.414 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:11:36&start_after=2026-01-20T20:11:36&end_after=2026-01-21T20:11:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:11:36.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.586 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.589 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:11:36.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:11:36.594 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:11:36.594 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:11:36.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:11:36.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:11:36.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1209.405352
2026-01-21T22:11:36.594 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T22:11:38.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1397.733/1500.0
2026-01-21T22:11:39.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:39.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:39.153 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:39.153 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:40.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1395.646/1500.0
2026-01-21T22:11:42.156 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:42.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:11:42.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:42.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:11:42.211 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1393.563/1500.0
2026-01-21T22:11:44.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1391.47/1500.0
2026-01-21T22:11:45.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:45.184 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:11:45.184 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:45.184 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:45.603 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:11:46.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1389.405/1500.0
2026-01-21T22:11:48.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:48.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:48.202 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:48.202 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:48.422 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1387.323/1500.0
2026-01-21T22:11:50.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1385.259/1500.0
2026-01-21T22:11:51.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:51.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:51.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:51.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:52.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1383.183/1500.0
2026-01-21T22:11:54.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:54.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:54.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:54.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:54.663 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1381.09/1500.0
2026-01-21T22:11:55.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:11:56.702 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1379.019/1500.0
2026-01-21T22:11:57.226 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:11:57.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:11:57.250 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:11:57.251 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:11:58.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1376.981/1500.0
2026-01-21T22:12:00.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:00.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:00.273 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:00.273 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:00.796 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1374.93/1500.0
2026-01-21T22:12:02.857 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1372.886/1500.0
2026-01-21T22:12:03.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:03.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:03.277 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:03.277 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:04.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1370.825/1500.0
2026-01-21T22:12:05.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:12:06.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:06.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:06.301 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:06.301 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:06.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1368.781/1500.0
2026-01-21T22:12:08.963 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1366.752/1500.0
2026-01-21T22:12:09.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:09.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:09.305 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:09.305 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:11.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1364.719/1500.0
2026-01-21T22:12:12.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:12.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:12:12.325 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:12.325 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:12:13.078 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1362.664/1500.0
2026-01-21T22:12:15.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1360.604/1500.0
2026-01-21T22:12:15.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:15.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:12:15.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:15.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:15.635 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:12:17.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1358.559/1500.0
2026-01-21T22:12:18.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:18.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:18.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:18.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:19.227 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1356.531/1500.0
2026-01-21T22:12:21.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1354.455/1500.0
2026-01-21T22:12:21.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:21.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:21.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:21.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:23.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1352.367/1500.0
2026-01-21T22:12:24.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:24.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:24.390 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:24.390 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:25.387 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1350.323/1500.0
2026-01-21T22:12:25.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:12:27.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:27.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:27.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:27.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:27.464 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1348.295/1500.0
2026-01-21T22:12:29.557 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1346.219/1500.0
2026-01-21T22:12:30.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:30.415 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:30.415 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:30.415 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:31.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1344.126/1500.0
2026-01-21T22:12:33.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:33.440 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:33.441 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:33.441 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:33.624 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1342.081/1500.0
2026-01-21T22:12:35.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1340.059/1500.0
2026-01-21T22:12:35.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:12:35.656 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:11:42.128807
2026-01-21T22:12:35.656 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:11:42.128807
2026-01-21T22:12:35.656 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:12:35.656 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:12:35.656 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:12:35.656 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:12:35&start_after=2026-01-20T20:12:35&end_after=2026-01-21T20:12:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:12:35.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.789 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:12:35.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1150.208472
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:12:35.791561    Obs time: 2026-01-21 20:31:46
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:10.208439
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1150
2026-01-21T22:12:35.791 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:12:36.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:36.460 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:36.460 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:36.460 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:37.751 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1338.031/1500.0
2026-01-21T22:12:39.463 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:39.464 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:39.464 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:39.464 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:39.833 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1335.931/1500.0
2026-01-21T22:12:41.861 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1333.851/1500.0
2026-01-21T22:12:42.467 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:42.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:42.486 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:42.486 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:43.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1331.821/1500.0
2026-01-21T22:12:44.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:12:45.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:45.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:12:45.490 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:45.490 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:12:46.025 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1329.728/1500.0
2026-01-21T22:12:48.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1327.658/1500.0
2026-01-21T22:12:48.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:48.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:12:48.509 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:48.509 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:50.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1325.591/1500.0
2026-01-21T22:12:51.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:51.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:51.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:51.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:52.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1323.527/1500.0
2026-01-21T22:12:54.229 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1321.481/1500.0
2026-01-21T22:12:54.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:54.559 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:54.559 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:54.559 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:54.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:12:56.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1319.453/1500.0
2026-01-21T22:12:57.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:12:57.563 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:12:57.563 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:12:57.563 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:12:58.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1317.355/1500.0
2026-01-21T22:13:00.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1315.311/1500.0
2026-01-21T22:13:00.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:00.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:00.582 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:00.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:02.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1313.283/1500.0
2026-01-21T22:13:03.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:03.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:03.586 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:03.586 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:04.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1311.222/1500.0
2026-01-21T22:13:04.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:13:06.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1309.163/1500.0
2026-01-21T22:13:06.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:06.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:06.610 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:06.610 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:08.625 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1307.119/1500.0
2026-01-21T22:13:09.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:09.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:09.628 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:09.628 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:10.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1305.056/1500.0
2026-01-21T22:13:12.631 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:12.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:12.648 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:12.648 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:12.693 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1303.012/1500.0
2026-01-21T22:13:14.770 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1300.989/1500.0
2026-01-21T22:13:14.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:13:15.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:15.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:15.652 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:15.652 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:16.819 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1298.912/1500.0
2026-01-21T22:13:18.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:18.675 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:18.675 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:18.675 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:18.922 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1296.863/1500.0
2026-01-21T22:13:20.967 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1294.761/1500.0
2026-01-21T22:13:21.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:21.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:21.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:21.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:23.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1292.715/1500.0
2026-01-21T22:13:24.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:24.699 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:13:24.699 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:24.699 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:13:24.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:13:25.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1290.682/1500.0
2026-01-21T22:13:27.175 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1288.551/1500.0
2026-01-21T22:13:27.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:27.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:13:27.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:27.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:29.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1286.507/1500.0
2026-01-21T22:13:30.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:30.748 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:30.748 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:30.748 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:31.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1284.457/1500.0
2026-01-21T22:13:33.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1282.413/1500.0
2026-01-21T22:13:33.751 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:33.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:13:33.752 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:33.752 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:13:34.849 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:13:34.850 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:12:42.328663
2026-01-21T22:13:34.850 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:12:42.328663
2026-01-21T22:13:34.850 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:13:34.850 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:13:34.850 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:13:34.850 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:13:34&start_after=2026-01-20T20:13:34&end_after=2026-01-21T20:13:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:13:34.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.979 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.981 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.985 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.988 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.988 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:13:34.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:13:34.994 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:13:34.994 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:13:34.994 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:13:34.994 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:13:34.994 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1091.005018
2026-01-21T22:13:34.995 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:13:34.995015    Obs time: 2026-01-21 20:31:46
2026-01-21T22:13:34.995 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:11.004985
2026-01-21T22:13:34.995 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1091
2026-01-21T22:13:34.995 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:13:35.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1280.338/1500.0
2026-01-21T22:13:36.755 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:36.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:13:36.777 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:36.777 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:37.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1278.271/1500.0
2026-01-21T22:13:39.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1276.221/1500.0
2026-01-21T22:13:39.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:39.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:39.781 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:39.781 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:41.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1274.177/1500.0
2026-01-21T22:13:42.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:42.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:42.805 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:42.805 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:43.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1272.116/1500.0
2026-01-21T22:13:44.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:13:45.633 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1270.072/1500.0
2026-01-21T22:13:45.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:45.826 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:45.826 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:45.826 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:47.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1268.049/1500.0
2026-01-21T22:13:48.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:48.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:48.849 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:48.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:49.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1265.951/1500.0
2026-01-21T22:13:51.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1263.886/1500.0
2026-01-21T22:13:51.852 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:51.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:51.853 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:51.853 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:53.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1261.847/1500.0
2026-01-21T22:13:54.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:13:54.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:54.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:13:54.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:54.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:13:55.973 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1259.754/1500.0
2026-01-21T22:13:57.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:13:57.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:13:57.874 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:13:57.874 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:13:58.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1257.709/1500.0
2026-01-21T22:14:00.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1255.643/1500.0
2026-01-21T22:14:00.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:00.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:14:00.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:00.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:02.138 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1253.599/1500.0
2026-01-21T22:14:03.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:03.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:03.920 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:03.920 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:04.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:14:04.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1251.544/1500.0
2026-01-21T22:14:06.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1249.511/1500.0
2026-01-21T22:14:06.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:06.943 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:14:06.943 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:06.944 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T22:14:08.298 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1247.444/1500.0
2026-01-21T22:14:09.947 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:09.948 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T22:14:09.948 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:09.948 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:10.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1245.384/1500.0
2026-01-21T22:14:12.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1243.339/1500.0
2026-01-21T22:14:12.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:12.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:12.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:12.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:14.031 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:14:14.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1241.311/1500.0
2026-01-21T22:14:15.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:15.992 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:15.992 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:15.992 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:16.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1239.283/1500.0
2026-01-21T22:14:18.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1237.244/1500.0
2026-01-21T22:14:18.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:18.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:18.996 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:18.996 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:20.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1235.151/1500.0
2026-01-21T22:14:21.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:22.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:22.014 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:22.014 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:22.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1233.085/1500.0
2026-01-21T22:14:24.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:14:24.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1231.041/1500.0
2026-01-21T22:14:25.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:25.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:14:25.035 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:25.036 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:14:26.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1228.991/1500.0
2026-01-21T22:14:28.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:28.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:14:28.038 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:28.038 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:28.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1226.925/1500.0
2026-01-21T22:14:30.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1224.854/1500.0
2026-01-21T22:14:31.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:31.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:31.057 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:31.057 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:32.959 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1222.788/1500.0
2026-01-21T22:14:34.050 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:14:34.060 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:34.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:14:34.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:34.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:14:34.071 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:13:42.530258
2026-01-21T22:14:34.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:13:42.530258
2026-01-21T22:14:34.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:14:34.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:14:34.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:14:34.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:14:34&start_after=2026-01-20T20:14:34&end_after=2026-01-21T20:14:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:14:34.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.206 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.208 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.209 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.209 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.215 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:14:34.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1031.777091
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:14:34.222941    Obs time: 2026-01-21 20:31:46
2026-01-21T22:14:34.222 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:11.777059
2026-01-21T22:14:34.223 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1031
2026-01-21T22:14:34.223 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:14:35.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1220.723/1500.0
2026-01-21T22:14:37.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:37.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T22:14:37.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:37.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:14:37.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1218.647/1500.0
2026-01-21T22:14:39.135 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1216.607/1500.0
2026-01-21T22:14:40.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:40.095 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: -0.0010000000000047748
2026-01-21T22:14:40.095 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:40.095 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:14:41.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1214.547/1500.0
2026-01-21T22:14:43.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:43.115 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T22:14:43.115 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:43.115 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:43.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:14:43.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1212.481/1500.0
2026-01-21T22:14:45.306 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1210.437/1500.0
2026-01-21T22:14:46.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:46.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:46.118 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:46.118 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:47.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1208.376/1500.0
2026-01-21T22:14:49.118 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:49.139 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:49.139 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:49.139 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:49.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1206.311/1500.0
2026-01-21T22:14:51.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1204.246/1500.0
2026-01-21T22:14:52.143 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:52.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:52.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:52.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:53.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:14:53.553 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1202.184/1500.0
2026-01-21T22:14:55.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:55.164 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:55.164 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:55.164 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:55.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1200.128/1500.0
2026-01-21T22:14:57.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1198.079/1500.0
2026-01-21T22:14:58.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:14:58.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:14:58.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:14:58.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:14:59.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1196.008/1500.0
2026-01-21T22:15:01.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:01.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:01.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:01.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:01.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1193.947/1500.0
2026-01-21T22:15:03.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:15:03.813 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1191.892/1500.0
2026-01-21T22:15:04.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:04.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:04.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:04.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:05.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1189.869/1500.0
2026-01-21T22:15:07.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:07.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:07.233 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:07.233 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:07.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1187.841/1500.0
2026-01-21T22:15:09.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1185.78/1500.0
2026-01-21T22:15:10.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:10.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:15:10.248 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:10.248 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:15:11.969 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1183.736/1500.0
2026-01-21T22:15:13.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:13.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:15:13.268 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:15:13.268 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:13.268 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:14.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1181.713/1500.0
2026-01-21T22:15:16.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1179.68/1500.0
2026-01-21T22:15:16.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:16.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:16.289 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:16.289 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:18.134 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1177.631/1500.0
2026-01-21T22:15:19.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:19.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:19.312 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:19.312 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:20.173 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1175.548/1500.0
2026-01-21T22:15:22.195 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1173.509/1500.0
2026-01-21T22:15:22.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:22.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:22.316 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:22.316 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:23.263 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:15:24.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1171.487/1500.0
2026-01-21T22:15:25.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:25.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:25.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:25.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:26.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1169.421/1500.0
2026-01-21T22:15:28.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:28.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:28.342 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:28.342 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:28.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1167.36/1500.0
2026-01-21T22:15:30.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1165.316/1500.0
2026-01-21T22:15:31.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:31.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:15:31.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:31.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:15:32.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1163.255/1500.0
2026-01-21T22:15:33.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:15:33.291 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:14:42.728395
2026-01-21T22:15:33.291 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:14:42.728395
2026-01-21T22:15:33.292 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:15:33.292 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:15:33.292 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:15:33.292 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:15:33&start_after=2026-01-20T20:15:33&end_after=2026-01-21T20:15:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:15:33.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:15:33.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 972.555071
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:15:33.444962    Obs time: 2026-01-21 20:31:46
2026-01-21T22:15:33.444 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:12.555038
2026-01-21T22:15:33.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  972
2026-01-21T22:15:33.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:15:34.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:34.388 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:15:34.388 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:34.388 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:34.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1161.223/1500.0
2026-01-21T22:15:36.587 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1159.161/1500.0
2026-01-21T22:15:37.391 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:37.391 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:37.439 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:37.440 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:38.658 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1157.095/1500.0
2026-01-21T22:15:40.443 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:40.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:40.463 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:40.463 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:40.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1155.026/1500.0
2026-01-21T22:15:42.452 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:15:42.800 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1152.959/1500.0
2026-01-21T22:15:43.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:43.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:43.467 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:43.467 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:44.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1150.883/1500.0
2026-01-21T22:15:46.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:46.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:46.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:46.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:46.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1148.843/1500.0
2026-01-21T22:15:48.928 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1146.821/1500.0
2026-01-21T22:15:49.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:49.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:49.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:49.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:50.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1144.754/1500.0
2026-01-21T22:15:52.462 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:15:52.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:52.515 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:15:52.515 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:52.515 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:15:53.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1142.689/1500.0
2026-01-21T22:15:55.125 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1140.622/1500.0
2026-01-21T22:15:55.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:55.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:15:55.519 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:55.519 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:57.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1138.556/1500.0
2026-01-21T22:15:58.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:15:58.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:15:58.541 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:15:58.541 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:15:59.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1136.512/1500.0
2026-01-21T22:16:01.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1134.463/1500.0
2026-01-21T22:16:01.544 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:01.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:01.545 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:01.545 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:02.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:16:03.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1132.419/1500.0
2026-01-21T22:16:04.548 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:04.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:04.569 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:04.569 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:05.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1130.381/1500.0
2026-01-21T22:16:07.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1128.331/1500.0
2026-01-21T22:16:07.572 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:07.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:07.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:07.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:09.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1126.275/1500.0
2026-01-21T22:16:10.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:10.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:10.598 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:10.598 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:11.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1124.231/1500.0
2026-01-21T22:16:12.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:16:13.557 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1122.191/1500.0
2026-01-21T22:16:13.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:13.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:13.622 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:13.622 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:15.655 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1120.127/1500.0
2026-01-21T22:16:16.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:16.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:16.646 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:16.646 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:17.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1118.027/1500.0
2026-01-21T22:16:19.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:19.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:19.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:19.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:19.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1115.951/1500.0
2026-01-21T22:16:21.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1113.886/1500.0
2026-01-21T22:16:22.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:16:22.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:22.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:22.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:22.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:23.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1111.847/1500.0
2026-01-21T22:16:25.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:25.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:25.674 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:25.674 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:25.925 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1109.817/1500.0
2026-01-21T22:16:27.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1107.757/1500.0
2026-01-21T22:16:28.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:28.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:28.697 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:28.697 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:30.035 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1105.691/1500.0
2026-01-21T22:16:31.700 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:31.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:16:31.701 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:31.701 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:16:32.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1103.647/1500.0
2026-01-21T22:16:32.494 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:16:32.515 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:15:42.927430
2026-01-21T22:16:32.515 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:15:42.927430
2026-01-21T22:16:32.515 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:16:32.515 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:16:32.515 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:16:32.515 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:16:32&start_after=2026-01-20T20:16:32&end_after=2026-01-21T20:16:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:16:32.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.663 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:16:32.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 913.331169
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:16:32.668864    Obs time: 2026-01-21 20:31:46
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:13.331136
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  913
2026-01-21T22:16:32.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:16:34.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1101.592/1500.0
2026-01-21T22:16:34.704 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:34.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:16:34.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:34.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:36.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1099.553/1500.0
2026-01-21T22:16:37.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:37.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:37.729 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:37.729 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:38.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1097.417/1500.0
2026-01-21T22:16:40.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1095.372/1500.0
2026-01-21T22:16:40.732 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:40.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:40.754 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:40.754 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:41.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:16:42.398 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1093.344/1500.0
2026-01-21T22:16:43.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:43.758 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:16:43.758 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:43.758 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:16:44.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1091.284/1500.0
2026-01-21T22:16:46.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1089.245/1500.0
2026-01-21T22:16:46.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:46.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T22:16:46.780 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:46.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:48.537 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1087.184/1500.0
2026-01-21T22:16:49.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:49.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:49.784 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:49.784 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:50.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1085.145/1500.0
2026-01-21T22:16:51.683 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:16:52.593 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1083.117/1500.0
2026-01-21T22:16:52.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:52.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:16:52.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:52.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:16:54.692 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1081.088/1500.0
2026-01-21T22:16:55.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:55.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:16:55.808 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:55.808 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:16:56.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1078.99/1500.0
2026-01-21T22:16:58.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1076.947/1500.0
2026-01-21T22:16:58.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:16:58.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:16:58.827 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:16:58.827 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:00.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1074.919/1500.0
2026-01-21T22:17:01.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:17:01.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:01.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:01.830 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:01.830 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:02.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1072.859/1500.0
2026-01-21T22:17:04.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:04.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:04.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:04.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:04.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1070.824/1500.0
2026-01-21T22:17:06.963 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1068.758/1500.0
2026-01-21T22:17:07.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:07.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:07.907 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:07.907 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:09.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1066.719/1500.0
2026-01-21T22:17:10.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:10.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:10.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:10.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:11.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1064.671/1500.0
2026-01-21T22:17:11.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:17:13.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1062.626/1500.0
2026-01-21T22:17:13.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:13.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:13.930 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:13.930 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:15.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1060.565/1500.0
2026-01-21T22:17:16.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:16.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:16.953 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:16.953 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:17.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1058.525/1500.0
2026-01-21T22:17:19.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1056.466/1500.0
2026-01-21T22:17:19.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:19.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:19.957 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:19.957 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:21.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1054.395/1500.0
2026-01-21T22:17:21.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:17:22.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:22.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:22.961 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:22.961 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:23.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1052.349/1500.0
2026-01-21T22:17:25.421 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1050.306/1500.0
2026-01-21T22:17:25.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:25.965 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:25.965 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:25.965 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:27.449 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1048.261/1500.0
2026-01-21T22:17:28.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:28.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:28.989 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:28.989 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:29.510 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1046.232/1500.0
2026-01-21T22:17:31.576 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1044.172/1500.0
2026-01-21T22:17:31.718 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:17:31.719 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:16:43.124438
2026-01-21T22:17:31.719 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:16:43.124438
2026-01-21T22:17:31.720 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:17:31.720 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:17:31.720 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:17:31.720 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:17:31&start_after=2026-01-20T20:17:31&end_after=2026-01-21T20:17:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:17:31.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.846 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.849 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:17:31.853 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 854.145491
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:17:31.854541    Obs time: 2026-01-21 20:31:46
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:14.145459
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  854
2026-01-21T22:17:31.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:17:31.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:31.990 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:31.990 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:31.990 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:33.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1042.106/1500.0
2026-01-21T22:17:34.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:34.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:17:34.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:34.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:17:35.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1040.04/1500.0
2026-01-21T22:17:37.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1037.991/1500.0
2026-01-21T22:17:37.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:37.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:17:37.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:37.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:39.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1035.962/1500.0
2026-01-21T22:17:40.863 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:17:41.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:41.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:17:41.024 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:41.024 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:17:41.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1033.934/1500.0
2026-01-21T22:17:43.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1031.906/1500.0
2026-01-21T22:17:44.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:44.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:17:44.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:44.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:45.902 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1029.846/1500.0
2026-01-21T22:17:47.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:47.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:47.050 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:47.050 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:47.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1027.78/1500.0
2026-01-21T22:17:50.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1025.715/1500.0
2026-01-21T22:17:50.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:50.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:50.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:50.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:50.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:17:52.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1023.671/1500.0
2026-01-21T22:17:53.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:53.072 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:17:53.072 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:53.072 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:17:54.101 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1021.631/1500.0
2026-01-21T22:17:56.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:56.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:17:56.076 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:56.076 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:17:56.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1019.581/1500.0
2026-01-21T22:17:58.243 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1017.515/1500.0
2026-01-21T22:17:59.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:17:59.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:17:59.097 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:17:59.097 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:00.309 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1015.438/1500.0
2026-01-21T22:18:00.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:18:02.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:02.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:18:02.101 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:02.101 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:18:02.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1013.373/1500.0
2026-01-21T22:18:04.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1011.307/1500.0
2026-01-21T22:18:05.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:05.126 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:18:05.126 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:05.126 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:06.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1009.262/1500.0
2026-01-21T22:18:08.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:08.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:08.130 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:08.130 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:08.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1007.239/1500.0
2026-01-21T22:18:10.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1005.179/1500.0
2026-01-21T22:18:10.889 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:18:11.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:11.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:18:11.154 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:11.154 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:18:12.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1003.134/1500.0
2026-01-21T22:18:14.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:14.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:18:14.158 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:14.158 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:14.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1001.085/1500.0
2026-01-21T22:18:16.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 999.04/1500.0
2026-01-21T22:18:17.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:17.184 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:17.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:17.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:18.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 997.012/1500.0
2026-01-21T22:18:20.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:20.214 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:20.214 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:20.214 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:20.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 994.973/1500.0
2026-01-21T22:18:20.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:18:22.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 992.951/1500.0
2026-01-21T22:18:23.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:23.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:23.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:23.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:24.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 990.891/1500.0
2026-01-21T22:18:26.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:26.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:26.220 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:26.220 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:26.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 988.847/1500.0
2026-01-21T22:18:28.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 986.797/1500.0
2026-01-21T22:18:29.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:29.239 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:29.239 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:29.239 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:30.908 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:18:30.923 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:17:43.322977
2026-01-21T22:18:30.923 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:17:43.322977
2026-01-21T22:18:30.923 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:18:30.923 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:18:30.924 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:18:30.924 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:18:30&start_after=2026-01-20T20:18:30&end_after=2026-01-21T20:18:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:18:30.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 984.751/1500.0
2026-01-21T22:18:31.048 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.050 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:18:31.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:18:31.064 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:18:31.064 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 794.934925
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:18:31.065159    Obs time: 2026-01-21 20:31:46
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:14.934841
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  794
2026-01-21T22:18:31.065 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:18:32.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:32.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:32.259 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:32.259 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:33.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 982.691/1500.0
2026-01-21T22:18:35.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 980.625/1500.0
2026-01-21T22:18:35.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:35.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:35.262 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:35.262 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:37.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 978.559/1500.0
2026-01-21T22:18:38.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:38.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:38.265 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:38.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:39.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 976.521/1500.0
2026-01-21T22:18:40.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:18:41.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:41.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 974.454/1500.0
2026-01-21T22:18:41.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:41.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:41.290 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:43.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 972.393/1500.0
2026-01-21T22:18:44.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:44.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:44.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:44.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:45.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 970.329/1500.0
2026-01-21T22:18:47.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:47.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:47.317 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:47.317 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:47.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 968.283/1500.0
2026-01-21T22:18:49.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 966.255/1500.0
2026-01-21T22:18:50.080 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:18:50.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:50.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:50.318 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:50.318 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:51.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 964.195/1500.0
2026-01-21T22:18:53.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:53.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:53.322 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:53.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:53.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 962.151/1500.0
2026-01-21T22:18:55.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 960.123/1500.0
2026-01-21T22:18:56.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:56.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:56.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:56.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:57.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 958.094/1500.0
2026-01-21T22:18:59.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:18:59.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:18:59.346 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:18:59.346 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:18:59.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 956.065/1500.0
2026-01-21T22:19:00.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:19:01.721 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 954.005/1500.0
2026-01-21T22:19:02.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:02.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:02.350 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:02.350 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:03.749 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 951.961/1500.0
2026-01-21T22:19:05.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:05.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:05.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:05.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:05.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 949.932/1500.0
2026-01-21T22:19:07.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 947.904/1500.0
2026-01-21T22:19:08.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:08.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:08.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:08.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:09.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 945.839/1500.0
2026-01-21T22:19:10.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:19:11.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:11.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:19:11.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:11.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T22:19:11.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 943.773/1500.0
2026-01-21T22:19:14.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 941.707/1500.0
2026-01-21T22:19:14.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:14.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T22:19:14.404 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:14.404 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:16.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 939.662/1500.0
2026-01-21T22:19:17.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:17.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:17.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:17.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:18.108 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 937.641/1500.0
2026-01-21T22:19:20.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:19:20.152 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 935.575/1500.0
2026-01-21T22:19:20.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:20.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:19:20.425 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:20.425 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:19:22.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 933.529/1500.0
2026-01-21T22:19:23.428 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:23.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:19:23.429 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:23.429 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:24.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 931.501/1500.0
2026-01-21T22:19:26.232 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 929.473/1500.0
2026-01-21T22:19:26.432 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:26.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:26.447 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:26.447 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:28.298 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 927.45/1500.0
2026-01-21T22:19:29.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:29.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:29.451 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:29.451 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:30.117 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:19:30.140 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:18:43.523094
2026-01-21T22:19:30.140 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:18:43.523094
2026-01-21T22:19:30.140 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:19:30.140 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:19:30.140 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:19:30.140 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:19:30&start_after=2026-01-20T20:19:30&end_after=2026-01-21T20:19:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:19:30.281 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.282 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.285 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.287 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.288 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.290 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.292 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.293 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.293 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.295 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.296 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 735.70105
2026-01-21T22:19:30.298 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:19:30.298983    Obs time: 2026-01-21 20:31:46
2026-01-21T22:19:30.299 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:15.701017
2026-01-21T22:19:30.299 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  735
2026-01-21T22:19:30.299 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:19:30.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 925.384/1500.0
2026-01-21T22:19:32.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 923.319/1500.0
2026-01-21T22:19:32.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:32.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:19:32.469 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:32.469 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:19:34.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 921.253/1500.0
2026-01-21T22:19:35.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:35.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T22:19:35.473 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:35.473 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:36.502 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 919.215/1500.0
2026-01-21T22:19:38.476 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:38.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:38.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:38.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:38.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 917.18/1500.0
2026-01-21T22:19:39.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:19:40.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 915.131/1500.0
2026-01-21T22:19:41.500 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:41.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:41.501 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:41.501 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:42.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 913.075/1500.0
2026-01-21T22:19:44.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:44.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:19:44.525 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:44.525 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:19:44.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 911.02/1500.0
2026-01-21T22:19:46.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 908.976/1500.0
2026-01-21T22:19:47.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:47.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:19:47.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:47.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:48.784 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 906.948/1500.0
2026-01-21T22:19:49.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:19:50.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:50.551 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:50.551 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:50.551 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:50.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 904.898/1500.0
2026-01-21T22:19:52.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 902.859/1500.0
2026-01-21T22:19:53.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:53.554 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:53.554 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:53.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:54.912 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 900.82/1500.0
2026-01-21T22:19:56.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:56.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:56.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:56.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:19:56.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 898.77/1500.0
2026-01-21T22:19:59.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 896.731/1500.0
2026-01-21T22:19:59.325 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:19:59.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:19:59.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:19:59.582 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:19:59.582 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:01.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 894.665/1500.0
2026-01-21T22:20:02.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:02.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:02.604 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:02.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:03.143 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 892.6/1500.0
2026-01-21T22:20:05.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 890.539/1500.0
2026-01-21T22:20:05.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:05.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:05.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:05.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:07.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 888.473/1500.0
2026-01-21T22:20:08.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:08.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:08.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:08.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:09.297 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 886.43/1500.0
2026-01-21T22:20:09.333 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:20:11.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 884.386/1500.0
2026-01-21T22:20:11.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:11.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:20:11.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:11.629 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:20:13.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 882.34/1500.0
2026-01-21T22:20:14.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:14.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0010000000000047748
2026-01-21T22:20:14.652 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:14.652 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:20:15.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 880.296/1500.0
2026-01-21T22:20:17.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 878.235/1500.0
2026-01-21T22:20:17.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:17.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:20:17.656 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:17.656 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:19.343 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:20:19.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 876.142/1500.0
2026-01-21T22:20:20.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:20.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:20.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:20.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:21.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 874.083/1500.0
2026-01-21T22:20:23.651 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 872.055/1500.0
2026-01-21T22:20:23.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:23.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:23.682 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:23.682 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:25.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 870.031/1500.0
2026-01-21T22:20:26.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:26.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:26.703 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:26.703 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:27.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 868.003/1500.0
2026-01-21T22:20:29.353 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:20:29.372 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:19:43.726247
2026-01-21T22:20:29.372 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:19:43.726247
2026-01-21T22:20:29.372 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:20:29.372 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:20:29.373 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:20:29.373 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:20:29&start_after=2026-01-20T20:20:29&end_after=2026-01-21T20:20:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:20:29.491 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.492 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.494 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.495 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.495 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.498 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:20:29.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 676.49145
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:20:29.508582    Obs time: 2026-01-21 20:31:46
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:16.491418
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  676
2026-01-21T22:20:29.508 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:20:29.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:29.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:29.707 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:29.707 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:29.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 865.942/1500.0
2026-01-21T22:20:31.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 863.876/1500.0
2026-01-21T22:20:32.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:32.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:20:32.711 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:32.711 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:20:33.942 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 861.805/1500.0
2026-01-21T22:20:35.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:35.715 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:20:35.715 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:35.715 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:35.981 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 859.739/1500.0
2026-01-21T22:20:38.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 857.701/1500.0
2026-01-21T22:20:38.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:20:38.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:38.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:38.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:38.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:40.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 855.661/1500.0
2026-01-21T22:20:41.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:41.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:41.740 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:41.740 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:42.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 853.612/1500.0
2026-01-21T22:20:44.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 851.573/1500.0
2026-01-21T22:20:44.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:44.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:44.745 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:44.745 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:46.230 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 849.512/1500.0
2026-01-21T22:20:47.748 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:47.764 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:20:47.765 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:47.765 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:20:48.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 847.452/1500.0
2026-01-21T22:20:48.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:20:50.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 845.375/1500.0
2026-01-21T22:20:50.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:50.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:20:50.768 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:50.768 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:52.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 843.336/1500.0
2026-01-21T22:20:53.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:53.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:53.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:53.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:54.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 841.275/1500.0
2026-01-21T22:20:56.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 839.236/1500.0
2026-01-21T22:20:56.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:56.795 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:56.795 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:56.795 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:20:58.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 837.197/1500.0
2026-01-21T22:20:58.537 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:20:59.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:20:59.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:20:59.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:20:59.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:00.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 835.147/1500.0
2026-01-21T22:21:02.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 833.082/1500.0
2026-01-21T22:21:02.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:02.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:02.822 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:02.822 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:04.700 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 831.042/1500.0
2026-01-21T22:21:05.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:05.847 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:21:05.847 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:05.847 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:21:06.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 828.982/1500.0
2026-01-21T22:21:08.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:21:08.832 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 826.916/1500.0
2026-01-21T22:21:08.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:08.851 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T22:21:08.851 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:08.851 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:10.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 824.851/1500.0
2026-01-21T22:21:11.854 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:11.875 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:11.875 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:11.875 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:12.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 822.784/1500.0
2026-01-21T22:21:14.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:14.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:14.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:14.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:15.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 820.71/1500.0
2026-01-21T22:21:17.106 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 818.642/1500.0
2026-01-21T22:21:17.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:17.899 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:17.899 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:17.899 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:18.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:21:19.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 816.576/1500.0
2026-01-21T22:21:20.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:20.903 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:20.903 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:20.903 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:21.216 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 814.511/1500.0
2026-01-21T22:21:23.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 812.466/1500.0
2026-01-21T22:21:23.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:23.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:23.923 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:23.923 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:25.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 810.405/1500.0
2026-01-21T22:21:26.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:26.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:26.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:26.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:27.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 808.34/1500.0
2026-01-21T22:21:28.561 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:21:28.578 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:20:43.926882
2026-01-21T22:21:28.578 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:20:43.926882
2026-01-21T22:21:28.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:21:28.578 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:21:28.578 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:21:28.578 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:21:28&start_after=2026-01-20T20:21:28&end_after=2026-01-21T20:21:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:21:28.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.709 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.716 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.718 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.721 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:21:28.724 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:21:28.724 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:21:28.724 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:21:28.724 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:21:28.724 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:21:28.725 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 617.274976
2026-01-21T22:21:28.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:21:28.725056    Obs time: 2026-01-21 20:31:46
2026-01-21T22:21:28.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:17.274944
2026-01-21T22:21:28.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  617
2026-01-21T22:21:28.725 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:21:29.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 806.301/1500.0
2026-01-21T22:21:29.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:29.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:29.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:29.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:31.470 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 804.263/1500.0
2026-01-21T22:21:32.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:32.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:32.949 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:32.949 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:33.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 802.212/1500.0
2026-01-21T22:21:35.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 800.147/1500.0
2026-01-21T22:21:35.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:35.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:35.968 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:35.968 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:37.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 798.069/1500.0
2026-01-21T22:21:37.733 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:21:38.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:38.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:38.972 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:38.972 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:39.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 796.031/1500.0
2026-01-21T22:21:41.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 793.981/1500.0
2026-01-21T22:21:41.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:41.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:41.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:41.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:43.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 791.936/1500.0
2026-01-21T22:21:44.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:44.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:44.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:44.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:45.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 789.897/1500.0
2026-01-21T22:21:47.742 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:21:47.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 787.847/1500.0
2026-01-21T22:21:48.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:48.019 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:48.019 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:48.019 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:49.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 785.787/1500.0
2026-01-21T22:21:51.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:51.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:51.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:51.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:52.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 783.711/1500.0
2026-01-21T22:21:54.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:54.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:54.045 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:54.045 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:54.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 781.644/1500.0
2026-01-21T22:21:56.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 779.6/1500.0
2026-01-21T22:21:57.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:21:57.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:21:57.068 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:21:57.068 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:21:57.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:21:58.182 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 777.54/1500.0
2026-01-21T22:22:00.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:00.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:00.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:00.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:00.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 775.5/1500.0
2026-01-21T22:22:02.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 773.479/1500.0
2026-01-21T22:22:03.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:03.095 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:03.096 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:03.096 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:04.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 771.412/1500.0
2026-01-21T22:22:06.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:06.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:06.122 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:06.122 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:06.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 769.367/1500.0
2026-01-21T22:22:07.763 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:22:08.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 767.339/1500.0
2026-01-21T22:22:09.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:09.126 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:09.126 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:09.126 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:10.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 765.311/1500.0
2026-01-21T22:22:12.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:12.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:12.151 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:12.151 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:12.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 763.283/1500.0
2026-01-21T22:22:14.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 761.255/1500.0
2026-01-21T22:22:15.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:15.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:15.155 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:15.155 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:16.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 759.195/1500.0
2026-01-21T22:22:17.770 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:22:18.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:18.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:22:18.177 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:18.177 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:22:18.593 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 757.13/1500.0
2026-01-21T22:22:20.637 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 755.089/1500.0
2026-01-21T22:22:21.180 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:21.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:22:21.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:21.181 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:22.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 753.044/1500.0
2026-01-21T22:22:24.184 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:24.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:24.185 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:24.185 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:24.688 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 751.022/1500.0
2026-01-21T22:22:26.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 748.993/1500.0
2026-01-21T22:22:27.188 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:27.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:27.189 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:27.189 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:27.781 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:22:27.800 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:21:44.125225
2026-01-21T22:22:27.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:21:44.125225
2026-01-21T22:22:27.800 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:22:27.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:22:27.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:22:27.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:22:27&start_after=2026-01-20T20:22:27&end_after=2026-01-21T20:22:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:22:27.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.952 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.953 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.954 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.955 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.959 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.960 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.961 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.964 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:22:27.966 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:22:27.967 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:22:27.967 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:22:27.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:22:27.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:22:27.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 558.032188
2026-01-21T22:22:27.968 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:22:28.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 746.924/1500.0
2026-01-21T22:22:29.969 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:22:29.987 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:22:29.987 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:22:29.987746    Obs time: 2026-01-21 20:31:46
2026-01-21T22:22:29.987 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:16.012254
2026-01-21T22:22:29.987 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  556
2026-01-21T22:22:29.987 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:22:30.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:30.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:30.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:30.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:30.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 744.888/1500.0
2026-01-21T22:22:32.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 742.845/1500.0
2026-01-21T22:22:33.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:33.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:33.194 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:33.194 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:34.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 740.778/1500.0
2026-01-21T22:22:36.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:36.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:36.215 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:36.215 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:36.994 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:22:37.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 738.701/1500.0
2026-01-21T22:22:39.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 736.662/1500.0
2026-01-21T22:22:39.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:39.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:22:39.219 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:39.219 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:22:41.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 734.623/1500.0
2026-01-21T22:22:42.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:42.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: -0.0009999999999763531
2026-01-21T22:22:42.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:42.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:22:43.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 732.602/1500.0
2026-01-21T22:22:45.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 730.54/1500.0
2026-01-21T22:22:45.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:45.246 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:22:45.246 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:45.246 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:47.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:22:47.236 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 728.5/1500.0
2026-01-21T22:22:48.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:48.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:48.273 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:48.273 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:49.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 726.446/1500.0
2026-01-21T22:22:51.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:51.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:51.277 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:51.277 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:51.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 724.38/1500.0
2026-01-21T22:22:53.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 722.336/1500.0
2026-01-21T22:22:54.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:54.299 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:54.299 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:54.299 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:55.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 720.275/1500.0
2026-01-21T22:22:57.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:22:57.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:22:57.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:22:57.303 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:22:57.303 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:22:57.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 718.209/1500.0
2026-01-21T22:22:59.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 716.143/1500.0
2026-01-21T22:23:00.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:00.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:00.326 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:00.326 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:01.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 714.076/1500.0
2026-01-21T22:23:03.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:03.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:03.330 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:03.330 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:03.742 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 712.0/1500.0
2026-01-21T22:23:05.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 709.94/1500.0
2026-01-21T22:23:06.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:06.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:23:06.353 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:06.353 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:23:07.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:23:07.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 707.901/1500.0
2026-01-21T22:23:09.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:09.355 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:23:09.355 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:09.355 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:09.907 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 705.835/1500.0
2026-01-21T22:23:12.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 703.775/1500.0
2026-01-21T22:23:12.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:12.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:12.375 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:12.375 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:14.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 701.666/1500.0
2026-01-21T22:23:15.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:15.379 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:15.379 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:15.379 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:16.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 699.6/1500.0
2026-01-21T22:23:17.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:23:18.182 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 697.56/1500.0
2026-01-21T22:23:18.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:18.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:18.404 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:18.404 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:20.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 695.5/1500.0
2026-01-21T22:23:21.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:21.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:23:21.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:21.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:23:22.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 693.457/1500.0
2026-01-21T22:23:24.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 691.433/1500.0
2026-01-21T22:23:24.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:24.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:23:24.430 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:24.430 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:26.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 689.367/1500.0
2026-01-21T22:23:27.043 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:23:27.044 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:22:44.325937
2026-01-21T22:23:27.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:22:44.325937
2026-01-21T22:23:27.044 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:23:27.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:23:27.044 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:23:27.044 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:23:27&start_after=2026-01-20T20:23:27&end_after=2026-01-21T20:23:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:23:27.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.171 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.171 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.175 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.176 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.178 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.179 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.179 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.180 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.181 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.183 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:23:27.184 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:23:27.185 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:23:27.185 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:23:27.185 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:23:27.185 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:23:27.185 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 498.814528
2026-01-21T22:23:27.186 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:23:27.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:27.434 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:27.434 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:27.434 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:28.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 687.302/1500.0
2026-01-21T22:23:29.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:23:29.189 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:23:29.189 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:23:29.189409    Obs time: 2026-01-21 20:31:46
2026-01-21T22:23:29.189 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:16.810591
2026-01-21T22:23:29.189 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  496
2026-01-21T22:23:29.189 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:23:30.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:30.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 685.263/1500.0
2026-01-21T22:23:30.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:30.457 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:30.457 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:32.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 683.234/1500.0
2026-01-21T22:23:33.460 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:33.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:33.481 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:33.481 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:34.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 681.206/1500.0
2026-01-21T22:23:36.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:23:36.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:36.502 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:36.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:36.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:36.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 679.14/1500.0
2026-01-21T22:23:38.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 677.074/1500.0
2026-01-21T22:23:39.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:39.524 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:39.524 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:39.524 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:40.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 675.015/1500.0
2026-01-21T22:23:42.527 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:42.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:23:42.528 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:42.528 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:23:42.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 672.969/1500.0
2026-01-21T22:23:44.775 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 670.931/1500.0
2026-01-21T22:23:45.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:45.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:23:45.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:45.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:46.206 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:23:46.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 668.907/1500.0
2026-01-21T22:23:48.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:48.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:48.554 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:48.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:48.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 666.847/1500.0
2026-01-21T22:23:50.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 664.807/1500.0
2026-01-21T22:23:51.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:51.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:51.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:51.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:52.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 662.759/1500.0
2026-01-21T22:23:54.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:54.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:54.579 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:54.579 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:55.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 660.713/1500.0
2026-01-21T22:23:56.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:23:57.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 658.648/1500.0
2026-01-21T22:23:57.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:23:57.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:23:57.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:23:57.603 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:23:59.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 656.582/1500.0
2026-01-21T22:24:00.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:00.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:00.607 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:00.607 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:01.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 654.516/1500.0
2026-01-21T22:24:03.266 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 652.478/1500.0
2026-01-21T22:24:03.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:03.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:03.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:03.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:05.331 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 650.416/1500.0
2026-01-21T22:24:06.227 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:24:06.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:06.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:06.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:06.629 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:07.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 648.351/1500.0
2026-01-21T22:24:09.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 646.291/1500.0
2026-01-21T22:24:09.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:09.655 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:09.655 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:09.655 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:11.475 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 644.247/1500.0
2026-01-21T22:24:12.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:12.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:12.659 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:12.659 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:13.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 642.207/1500.0
2026-01-21T22:24:15.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 640.184/1500.0
2026-01-21T22:24:15.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:15.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:15.681 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:15.681 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:16.237 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:24:17.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 638.144/1500.0
2026-01-21T22:24:18.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:18.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:18.685 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:18.685 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:19.626 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 636.116/1500.0
2026-01-21T22:24:21.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 634.057/1500.0
2026-01-21T22:24:21.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:21.707 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:21.707 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:21.707 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:23.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 631.995/1500.0
2026-01-21T22:24:24.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:24.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:24.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:24.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:25.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 629.956/1500.0
2026-01-21T22:24:26.247 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:24:26.265 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:23:44.526612
2026-01-21T22:24:26.265 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:23:44.526612
2026-01-21T22:24:26.265 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:24:26.265 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:24:26.265 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:24:26.265 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:24:26&start_after=2026-01-20T20:24:26&end_after=2026-01-21T20:24:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:24:26.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.388 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.388 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.389 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.391 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.396 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:24:26.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:24:26.401 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:24:26.401 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:24:26.401 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:24:26.401 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:24:26.401 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 439.598659
2026-01-21T22:24:26.402 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:24:27.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:27.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:27.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:27.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:27.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 627.89/1500.0
2026-01-21T22:24:28.404 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:24:28.405 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:24:28.405 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:24:28.405626    Obs time: 2026-01-21 20:31:46
2026-01-21T22:24:28.405 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:17.594374
2026-01-21T22:24:28.405 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  437
2026-01-21T22:24:28.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:24:29.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 625.851/1500.0
2026-01-21T22:24:30.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:30.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:30.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:30.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:31.925 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 623.802/1500.0
2026-01-21T22:24:33.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:33.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:33.780 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:33.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:33.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 621.759/1500.0
2026-01-21T22:24:35.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:24:36.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 619.697/1500.0
2026-01-21T22:24:36.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:36.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:36.784 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:36.784 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:38.101 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 617.627/1500.0
2026-01-21T22:24:39.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:39.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:39.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:39.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:40.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 615.583/1500.0
2026-01-21T22:24:42.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 613.533/1500.0
2026-01-21T22:24:42.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:42.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:42.806 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:42.806 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:44.255 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 611.492/1500.0
2026-01-21T22:24:45.422 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:24:45.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:45.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:45.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:45.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:46.300 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 609.427/1500.0
2026-01-21T22:24:48.349 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 607.383/1500.0
2026-01-21T22:24:48.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:48.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:48.830 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:48.830 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:50.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 605.332/1500.0
2026-01-21T22:24:51.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:51.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:51.853 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:51.853 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:52.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 603.293/1500.0
2026-01-21T22:24:54.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 601.265/1500.0
2026-01-21T22:24:54.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:54.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:54.857 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:54.857 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:55.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:24:56.510 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 599.226/1500.0
2026-01-21T22:24:57.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:24:57.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:24:57.878 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:24:57.878 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:24:58.576 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 597.171/1500.0
2026-01-21T22:25:00.642 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 595.107/1500.0
2026-01-21T22:25:00.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:00.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:00.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:00.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:02.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 593.04/1500.0
2026-01-21T22:25:03.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:03.907 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:25:03.907 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:03.907 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:25:04.720 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 591.001/1500.0
2026-01-21T22:25:05.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:25:06.765 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 588.962/1500.0
2026-01-21T22:25:06.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:06.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:25:06.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:06.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:08.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.917/1500.0
2026-01-21T22:25:09.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:09.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:09.933 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:09.933 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:10.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.873/1500.0
2026-01-21T22:25:12.935 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.807/1500.0
2026-01-21T22:25:12.936 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:12.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:12.937 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:12.937 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:15.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.747/1500.0
2026-01-21T22:25:15.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:25:15.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:15.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:15.956 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:15.956 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:17.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.681/1500.0
2026-01-21T22:25:18.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:18.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:18.960 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:18.960 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:19.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 576.615/1500.0
2026-01-21T22:25:21.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 574.56/1500.0
2026-01-21T22:25:21.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:21.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:21.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:21.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:23.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 572.531/1500.0
2026-01-21T22:25:24.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:25.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:25.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:25.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:25.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 570.482/1500.0
2026-01-21T22:25:25.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:25:25.461 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:24:44.726590
2026-01-21T22:25:25.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:24:44.726590
2026-01-21T22:25:25.461 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:25:25.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:25:25.461 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:25:25.461 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:25:25&start_after=2026-01-20T20:25:25&end_after=2026-01-21T20:25:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:25:25.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.616 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.617 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.618 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.620 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.621 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.622 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.625 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.626 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:25:25.628 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:25:25.628 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:25:25.628 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:25:25.628 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:25:25.629 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:25:25.629 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 380.370948
2026-01-21T22:25:25.629 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:25:27.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 568.426/1500.0
2026-01-21T22:25:27.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:25:27.648 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:25:27.648 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:25:27.648084    Obs time: 2026-01-21 20:31:46
2026-01-21T22:25:27.648 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:18.351916
2026-01-21T22:25:27.648 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  378
2026-01-21T22:25:27.648 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:25:28.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:28.008 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:28.008 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:28.008 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:29.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 566.377/1500.0
2026-01-21T22:25:31.011 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:31.012 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:31.012 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:31.012 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:31.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 564.316/1500.0
2026-01-21T22:25:33.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 562.272/1500.0
2026-01-21T22:25:34.015 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:34.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:34.032 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:34.032 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:34.654 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:25:35.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 560.245/1500.0
2026-01-21T22:25:37.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:37.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:37.034 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:37.034 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:37.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 558.183/1500.0
2026-01-21T22:25:39.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 556.117/1500.0
2026-01-21T22:25:40.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:40.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:25:40.056 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:40.057 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:25:41.669 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 554.073/1500.0
2026-01-21T22:25:43.060 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:43.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:25:43.061 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:43.061 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:43.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 552.012/1500.0
2026-01-21T22:25:44.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:25:45.774 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.947/1500.0
2026-01-21T22:25:46.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:46.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:46.086 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:46.086 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:47.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.907/1500.0
2026-01-21T22:25:49.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:49.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:25:49.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:49.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:25:49.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.879/1500.0
2026-01-21T22:25:51.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.851/1500.0
2026-01-21T22:25:52.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:52.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:25:52.113 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:52.113 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:53.936 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.791/1500.0
2026-01-21T22:25:54.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:25:55.116 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:55.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:55.117 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:55.117 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:25:55.964 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 539.746/1500.0
2026-01-21T22:25:58.024 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 537.718/1500.0
2026-01-21T22:25:58.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:25:58.139 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:25:58.139 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:25:58.139 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:00.069 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 535.659/1500.0
2026-01-21T22:26:01.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:01.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:01.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:01.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:02.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 533.614/1500.0
2026-01-21T22:26:04.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 531.591/1500.0
2026-01-21T22:26:04.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:04.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:04.167 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:04.167 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:04.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:26:06.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 529.562/1500.0
2026-01-21T22:26:07.170 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:07.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:26:07.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:07.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T22:26:08.187 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 527.523/1500.0
2026-01-21T22:26:10.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:10.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T22:26:10.189 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:10.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:10.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 525.494/1500.0
2026-01-21T22:26:12.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 523.472/1500.0
2026-01-21T22:26:13.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:13.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:13.193 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:13.194 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:14.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 521.434/1500.0
2026-01-21T22:26:14.686 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:26:16.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:16.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:16.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:16.217 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:16.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 519.383/1500.0
2026-01-21T22:26:18.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 517.306/1500.0
2026-01-21T22:26:19.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:19.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:19.219 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:19.219 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:20.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 515.245/1500.0
2026-01-21T22:26:22.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:22.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:22.238 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:22.238 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:22.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 513.207/1500.0
2026-01-21T22:26:24.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 511.163/1500.0
2026-01-21T22:26:24.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:26:24.710 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:25:44.924808
2026-01-21T22:26:24.710 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:25:44.924808
2026-01-21T22:26:24.710 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:26:24.710 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:26:24.710 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:26:24.710 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:26:24&start_after=2026-01-20T20:26:24&end_after=2026-01-21T20:26:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:26:24.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:26:24.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:26:24.846 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:26:24.846 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:26:24.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:26:24.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:26:24.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 321.153559
2026-01-21T22:26:24.847 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:26:25.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:25.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:25.241 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:25.241 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:26.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 509.117/1500.0
2026-01-21T22:26:26.849 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:26:26.850 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:26:26.850 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:26:26.850136    Obs time: 2026-01-21 20:31:46
2026-01-21T22:26:26.850 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:19.149864
2026-01-21T22:26:26.850 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  319
2026-01-21T22:26:26.850 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:26:28.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:28.260 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:28.260 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:28.260 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:28.702 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 507.041/1500.0
2026-01-21T22:26:30.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 504.98/1500.0
2026-01-21T22:26:31.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:31.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:31.266 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:31.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:32.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 502.936/1500.0
2026-01-21T22:26:33.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:26:34.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:34.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:34.289 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:34.289 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:34.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 500.875/1500.0
2026-01-21T22:26:36.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 498.842/1500.0
2026-01-21T22:26:37.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:37.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:37.291 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:37.291 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:38.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 496.782/1500.0
2026-01-21T22:26:40.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:40.310 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:40.310 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:40.310 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:40.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 494.742/1500.0
2026-01-21T22:26:43.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 492.714/1500.0
2026-01-21T22:26:43.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:43.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:43.314 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:43.314 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:43.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:26:45.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 490.6/1500.0
2026-01-21T22:26:46.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:46.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:46.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:46.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:47.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 488.55/1500.0
2026-01-21T22:26:49.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 486.473/1500.0
2026-01-21T22:26:49.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:49.343 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:49.343 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:49.343 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:51.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 484.413/1500.0
2026-01-21T22:26:52.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:52.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:52.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:52.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:53.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 482.374/1500.0
2026-01-21T22:26:53.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:26:55.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:55.367 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:55.367 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:55.367 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:55.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 480.334/1500.0
2026-01-21T22:26:57.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 478.285/1500.0
2026-01-21T22:26:58.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:26:58.388 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:26:58.418 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:26:58.418 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:26:59.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 476.208/1500.0
2026-01-21T22:27:01.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:01.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:27:01.423 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:01.423 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:27:01.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 474.164/1500.0
2026-01-21T22:27:03.591 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 472.136/1500.0
2026-01-21T22:27:03.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:27:04.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:04.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:27:04.444 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:04.444 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:05.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 470.091/1500.0
2026-01-21T22:27:07.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:07.448 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:07.448 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:07.448 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:07.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 468.047/1500.0
2026-01-21T22:27:09.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 466.003/1500.0
2026-01-21T22:27:10.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:10.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:27:10.468 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:10.469 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:27:11.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 463.958/1500.0
2026-01-21T22:27:13.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:13.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:27:13.473 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:13.473 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:13.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 461.914/1500.0
2026-01-21T22:27:13.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:27:15.824 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 459.875/1500.0
2026-01-21T22:27:16.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:16.495 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:16.495 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:16.495 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:17.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 457.859/1500.0
2026-01-21T22:27:19.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:19.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:19.499 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:19.499 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:19.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 455.814/1500.0
2026-01-21T22:27:21.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 453.763/1500.0
2026-01-21T22:27:22.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:22.520 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:22.520 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:22.520 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:23.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:27:23.903 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:26:45.125540
2026-01-21T22:27:23.903 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:26:45.125540
2026-01-21T22:27:23.903 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:27:23.903 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:27:23.903 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:27:23.903 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:27:23&start_after=2026-01-20T20:27:23&end_after=2026-01-21T20:27:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:27:24.019 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.024 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.030 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 451.698/1500.0
2026-01-21T22:27:24.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:27:24.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:27:24.037 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:27:24.037 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:27:24.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:27:24.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:27:24.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 261.962234
2026-01-21T22:27:24.038 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:27:25.524 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:25.524 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:25.524 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:25.524 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:26.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:27:26.040 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:27:26.040 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:27:26.040346    Obs time: 2026-01-21 20:31:46
2026-01-21T22:27:26.040 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:19.959654
2026-01-21T22:27:26.040 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  259
2026-01-21T22:27:26.040 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:27:26.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 449.651/1500.0
2026-01-21T22:27:28.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 447.599/1500.0
2026-01-21T22:27:28.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:28.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:28.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:28.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:30.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 445.537/1500.0
2026-01-21T22:27:31.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:31.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:27:31.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:31.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:27:32.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 443.461/1500.0
2026-01-21T22:27:33.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:27:34.326 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 441.4/1500.0
2026-01-21T22:27:34.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:34.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:27:34.569 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:34.569 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:36.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 439.356/1500.0
2026-01-21T22:27:37.572 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:37.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:27:37.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:37.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:27:38.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 437.301/1500.0
2026-01-21T22:27:40.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 435.247/1500.0
2026-01-21T22:27:40.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:40.592 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:27:40.592 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:40.592 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:42.525 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 433.202/1500.0
2026-01-21T22:27:43.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:27:43.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:43.596 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:43.596 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:43.596 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:44.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 431.157/1500.0
2026-01-21T22:27:46.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:46.615 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:46.615 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:46.616 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:46.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 429.096/1500.0
2026-01-21T22:27:48.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 427.03/1500.0
2026-01-21T22:27:49.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:49.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:49.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:49.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:50.767 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 424.959/1500.0
2026-01-21T22:27:52.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:52.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:52.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:52.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:52.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 422.915/1500.0
2026-01-21T22:27:53.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:27:54.861 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 420.867/1500.0
2026-01-21T22:27:55.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:55.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:55.645 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:55.645 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:56.900 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 418.821/1500.0
2026-01-21T22:27:58.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:27:58.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:27:58.667 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:27:58.667 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:27:58.961 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 416.784/1500.0
2026-01-21T22:28:00.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 414.721/1500.0
2026-01-21T22:28:01.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:01.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:01.671 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:01.671 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:03.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:28:03.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 412.698/1500.0
2026-01-21T22:28:04.674 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:04.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:04.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:04.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:05.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 410.6/1500.0
2026-01-21T22:28:07.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 408.562/1500.0
2026-01-21T22:28:07.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:07.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:07.709 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:07.709 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:09.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 406.463/1500.0
2026-01-21T22:28:10.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:10.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:10.713 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:10.713 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:11.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.424/1500.0
2026-01-21T22:28:13.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:28:13.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 402.347/1500.0
2026-01-21T22:28:13.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:13.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:13.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:13.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:15.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 400.324/1500.0
2026-01-21T22:28:16.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:16.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:16.741 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:16.741 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:17.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 398.287/1500.0
2026-01-21T22:28:19.486 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 396.235/1500.0
2026-01-21T22:28:19.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:19.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:19.765 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:19.765 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:21.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 394.196/1500.0
2026-01-21T22:28:22.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:22.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:22.770 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:22.770 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:23.092 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:28:23.093 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:27:45.322524
2026-01-21T22:28:23.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:27:45.322524
2026-01-21T22:28:23.093 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:28:23.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:28:23.093 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:28:23.093 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:28:23&start_after=2026-01-20T20:28:23&end_after=2026-01-21T20:28:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:28:23.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.226 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.230 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.239 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:28:23.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:28:23.241 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:28:23.241 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:28:23.241 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:28:23.241 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:28:23.241 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 202.758029
2026-01-21T22:28:23.242 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:28:23.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 392.136/1500.0
2026-01-21T22:28:25.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:28:25.244 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:28:25.244 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:28:25.244614    Obs time: 2026-01-21 20:31:46
2026-01-21T22:28:25.244 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:20.755386
2026-01-21T22:28:25.244 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  200
2026-01-21T22:28:25.244 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:28:25.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 390.096/1500.0
2026-01-21T22:28:25.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:25.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:25.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:25.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:27.690 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 388.02/1500.0
2026-01-21T22:28:28.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:28.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:28.812 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:28.812 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:29.799 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 385.992/1500.0
2026-01-21T22:28:31.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:31.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:31.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:31.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:31.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 383.883/1500.0
2026-01-21T22:28:32.251 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:28:33.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 381.854/1500.0
2026-01-21T22:28:34.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:34.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:34.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:34.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:36.003 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 379.724/1500.0
2026-01-21T22:28:37.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:37.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:28:37.856 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:37.856 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:28:38.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 377.679/1500.0
2026-01-21T22:28:40.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 375.631/1500.0
2026-01-21T22:28:40.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:40.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:28:40.860 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:40.860 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:42.195 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.553/1500.0
2026-01-21T22:28:42.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:28:43.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:43.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:43.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:43.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:44.234 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.487/1500.0
2026-01-21T22:28:46.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 369.448/1500.0
2026-01-21T22:28:46.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:46.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:46.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:46.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:48.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 367.42/1500.0
2026-01-21T22:28:49.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:49.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:49.905 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:49.905 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:50.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 365.381/1500.0
2026-01-21T22:28:52.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:28:52.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 363.358/1500.0
2026-01-21T22:28:52.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:52.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:52.929 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:52.929 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:54.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 361.265/1500.0
2026-01-21T22:28:55.932 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:55.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:55.952 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:55.952 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:28:56.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 359.226/1500.0
2026-01-21T22:28:58.561 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 357.181/1500.0
2026-01-21T22:28:58.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:28:58.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:28:58.956 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:28:58.956 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:00.622 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 355.121/1500.0
2026-01-21T22:29:01.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:01.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:01.981 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:01.981 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:02.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:29:02.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 353.06/1500.0
2026-01-21T22:29:04.694 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 351.016/1500.0
2026-01-21T22:29:04.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:04.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:04.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:04.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:06.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.988/1500.0
2026-01-21T22:29:07.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:08.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:08.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:08.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:08.885 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.857/1500.0
2026-01-21T22:29:10.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.797/1500.0
2026-01-21T22:29:11.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:11.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:11.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:11.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:12.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:29:12.969 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.754/1500.0
2026-01-21T22:29:14.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:14.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:14.050 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:14.050 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:14.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.715/1500.0
2026-01-21T22:29:17.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:17.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:17.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:17.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:17.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.686/1500.0
2026-01-21T22:29:19.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.555/1500.0
2026-01-21T22:29:20.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:20.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:29:20.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:20.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:29:21.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.511/1500.0
2026-01-21T22:29:22.300 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:29:22.318 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:28:45.519933
2026-01-21T22:29:22.318 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:28:45.519933
2026-01-21T22:29:22.318 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:29:22.318 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:29:22.318 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:29:22.318 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:29:22&start_after=2026-01-20T20:29:22&end_after=2026-01-21T20:29:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:29:22.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.456 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:29:22.459 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:29:22.460 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:29:22.460 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:29:22.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:29:22.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:29:22.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 143.539717
2026-01-21T22:29:22.461 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:29:23.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:23.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:29:23.081 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:23.081 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:23.331 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 332.483/1500.0
2026-01-21T22:29:24.463 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:29:24.464 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:29:24.464 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:29:24.464112    Obs time: 2026-01-21 20:31:46
2026-01-21T22:29:24.464 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:21.535888
2026-01-21T22:29:24.464 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  141
2026-01-21T22:29:24.464 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:29:25.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 330.351/1500.0
2026-01-21T22:29:26.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:26.102 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:29:26.102 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:26.102 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:29:27.435 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 328.307/1500.0
2026-01-21T22:29:29.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:29.126 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:29:29.126 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:29.126 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:29.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 326.247/1500.0
2026-01-21T22:29:31.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:29:31.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 324.182/1500.0
2026-01-21T22:29:32.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:32.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:32.130 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:32.130 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:33.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 322.136/1500.0
2026-01-21T22:29:35.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:35.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:29:35.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:35.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:29:35.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 320.108/1500.0
2026-01-21T22:29:37.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 318.053/1500.0
2026-01-21T22:29:38.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:38.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:29:38.138 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:38.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:39.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 315.993/1500.0
2026-01-21T22:29:41.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:41.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:41.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:41.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:41.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:29:41.762 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 313.949/1500.0
2026-01-21T22:29:43.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 311.92/1500.0
2026-01-21T22:29:44.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:44.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:44.166 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:44.166 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:45.888 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 309.855/1500.0
2026-01-21T22:29:47.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:47.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:47.185 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:47.185 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:47.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 307.795/1500.0
2026-01-21T22:29:49.988 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.755/1500.0
2026-01-21T22:29:50.188 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:50.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:50.204 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:50.204 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:51.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:29:52.054 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 303.695/1500.0
2026-01-21T22:29:53.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:53.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:53.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:53.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:54.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.628/1500.0
2026-01-21T22:29:56.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.551/1500.0
2026-01-21T22:29:56.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:56.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:29:56.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:56.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:29:58.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.513/1500.0
2026-01-21T22:29:59.226 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:29:59.227 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:29:59.227 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:29:59.227 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:30:00.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.484/1500.0
2026-01-21T22:30:01.498 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:30:02.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:02.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:30:02.249 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:02.249 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:02.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.458/1500.0
2026-01-21T22:30:04.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.428/1500.0
2026-01-21T22:30:05.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:05.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:30:05.272 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:05.272 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:30:06.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.363/1500.0
2026-01-21T22:30:08.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:08.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:30:08.288 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:08.288 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:08.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.319/1500.0
2026-01-21T22:30:10.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 285.273/1500.0
2026-01-21T22:30:11.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:11.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:11.292 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:11.292 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:11.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:30:12.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 283.229/1500.0
2026-01-21T22:30:14.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:14.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:14.312 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:14.312 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:14.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 281.19/1500.0
2026-01-21T22:30:16.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 279.147/1500.0
2026-01-21T22:30:17.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:17.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:17.314 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:17.314 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:18.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 277.069/1500.0
2026-01-21T22:30:20.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:20.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:20.336 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:20.337 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:20.750 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 275.008/1500.0
2026-01-21T22:30:21.518 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:30:21.534 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:29:45.720839
2026-01-21T22:30:21.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:29:45.720839
2026-01-21T22:30:21.534 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:30:21.535 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:30:21.535 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:30:21.535 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:30:21&start_after=2026-01-20T20:30:21&end_after=2026-01-21T20:30:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:30:21.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.663 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:30:21.668 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:30:21.705 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:30:21.706 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:30:21.706 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:30:21.706 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:30:21.706 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 84.293709
2026-01-21T22:30:21.707 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:30:22.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 272.931/1500.0
2026-01-21T22:30:23.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:23.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:23.353 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:23.353 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:23.709 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:30:23.710 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:30:23.710 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:30:23.710169    Obs time: 2026-01-21 20:31:46
2026-01-21T22:30:23.710 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:22.289831
2026-01-21T22:30:23.710 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  82
2026-01-21T22:30:23.710 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:30:24.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 270.867/1500.0
2026-01-21T22:30:26.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:26.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:26.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:26.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:26.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 268.806/1500.0
2026-01-21T22:30:28.982 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 266.75/1500.0
2026-01-21T22:30:29.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:29.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:30:29.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:29.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:30:30.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:30:31.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 264.702/1500.0
2026-01-21T22:30:32.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:32.402 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:30:32.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:32.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:33.049 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 262.657/1500.0
2026-01-21T22:30:35.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 260.633/1500.0
2026-01-21T22:30:35.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:35.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:35.405 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:35.405 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:37.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 258.599/1500.0
2026-01-21T22:30:38.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:38.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:38.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:38.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:39.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 256.571/1500.0
2026-01-21T22:30:40.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:30:41.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 254.532/1500.0
2026-01-21T22:30:41.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:41.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:30:41.451 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:41.451 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:30:43.244 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 252.483/1500.0
2026-01-21T22:30:44.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:44.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:30:44.468 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:44.468 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:45.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 250.439/1500.0
2026-01-21T22:30:47.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 248.379/1500.0
2026-01-21T22:30:47.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:47.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:47.517 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:47.517 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:49.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 246.338/1500.0
2026-01-21T22:30:50.520 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:50.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:50.537 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:50.537 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:50.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:30:51.449 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 244.288/1500.0
2026-01-21T22:30:53.477 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 242.235/1500.0
2026-01-21T22:30:53.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:53.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:53.541 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:53.541 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:55.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 240.206/1500.0
2026-01-21T22:30:56.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:56.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:56.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:56.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:57.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 238.183/1500.0
2026-01-21T22:30:59.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:30:59.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:30:59.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:30:59.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:30:59.626 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 236.123/1500.0
2026-01-21T22:31:00.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:31:01.692 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 234.056/1500.0
2026-01-21T22:31:02.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:02.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:02.583 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:02.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:03.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 231.99/1500.0
2026-01-21T22:31:05.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:05.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:05.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:05.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:05.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 229.924/1500.0
2026-01-21T22:31:07.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 227.847/1500.0
2026-01-21T22:31:08.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:08.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:08.609 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:08.609 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:09.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 225.767/1500.0
2026-01-21T22:31:10.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:31:11.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:11.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:31:11.613 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:11.613 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:31:12.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 223.711/1500.0
2026-01-21T22:31:14.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 221.644/1500.0
2026-01-21T22:31:14.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:14.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:31:14.637 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:14.637 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:16.105 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 219.601/1500.0
2026-01-21T22:31:17.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:17.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:17.659 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:17.659 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:18.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 217.577/1500.0
2026-01-21T22:31:20.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 215.538/1500.0
2026-01-21T22:31:20.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:20.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:20.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:20.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:20.764 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:31:20.765 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:30:45.920759
2026-01-21T22:31:20.765 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:30:45.920759
2026-01-21T22:31:20.765 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:31:20.765 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:31:20.765 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:31:20.765 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:31:20&start_after=2026-01-20T20:31:20&end_after=2026-01-21T20:31:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:31:20.904 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.909 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.913 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.915 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:31:20.920 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:31:20.921 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:31:20.921 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:31:20.921 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:31:20.921 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:31:20.922 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 25.077987
2026-01-21T22:31:20.922 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:31:22.195 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 213.51/1500.0
2026-01-21T22:31:22.924 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:31:22.942 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:31:22.944 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:31:22.944292    Obs time: 2026-01-21 20:31:46
2026-01-21T22:31:22.944 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:23.055708
2026-01-21T22:31:22.944 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  23
2026-01-21T22:31:22.944 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:31:23.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:23.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:23.681 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:23.682 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:24.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 211.487/1500.0
2026-01-21T22:31:26.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 209.426/1500.0
2026-01-21T22:31:26.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:26.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:26.703 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:26.703 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:28.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 207.366/1500.0
2026-01-21T22:31:29.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:29.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:29.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:29.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:29.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:31:30.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 205.289/1500.0
2026-01-21T22:31:32.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 203.25/1500.0
2026-01-21T22:31:32.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:32.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:32.727 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:32.727 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:34.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 201.189/1500.0
2026-01-21T22:31:35.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:35.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:35.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:35.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:36.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 199.15/1500.0
2026-01-21T22:31:38.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 197.089/1500.0
2026-01-21T22:31:38.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:38.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:38.756 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:38.756 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:39.958 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:31:40.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 195.029/1500.0
2026-01-21T22:31:41.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:41.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:41.758 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:41.758 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:42.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 192.984/1500.0
2026-01-21T22:31:44.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:44.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:44.777 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:44.777 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:44.824 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 190.924/1500.0
2026-01-21T22:31:46.868 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 188.858/1500.0
2026-01-21T22:31:47.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:47.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:31:47.781 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:47.781 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:48.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 186.814/1500.0
2026-01-21T22:31:49.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:31:50.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:50.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:31:50.793 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:50.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:31:50.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 184.791/1500.0
2026-01-21T22:31:53.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 182.73/1500.0
2026-01-21T22:31:53.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:53.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:31:53.817 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:53.817 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:55.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 180.666/1500.0
2026-01-21T22:31:56.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:56.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:31:56.839 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:56.839 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:31:57.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 178.62/1500.0
2026-01-21T22:31:59.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 176.56/1500.0
2026-01-21T22:31:59.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:31:59.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T22:31:59.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:31:59.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:31:59.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:32:01.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.499/1500.0
2026-01-21T22:32:02.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:02.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:02.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:02.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:03.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.444/1500.0
2026-01-21T22:32:05.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.395/1500.0
2026-01-21T22:32:05.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:05.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:05.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:05.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:07.414 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.328/1500.0
2026-01-21T22:32:08.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:08.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:08.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:08.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:09.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.268/1500.0
2026-01-21T22:32:09.984 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:32:11.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.225/1500.0
2026-01-21T22:32:11.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:11.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:11.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:11.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:13.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.159/1500.0
2026-01-21T22:32:14.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:14.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:14.933 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:14.933 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:15.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.119/1500.0
2026-01-21T22:32:17.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.096/1500.0
2026-01-21T22:32:17.936 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:17.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:17.937 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:17.937 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:19.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.035/1500.0
2026-01-21T22:32:19.994 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:32:19.995 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:31:46.120510
2026-01-21T22:32:19.995 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:31:46.120510
2026-01-21T22:32:19.995 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:32:19.995 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:32:19.995 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:32:19.995 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:32:19&start_after=2026-01-20T20:32:19&end_after=2026-01-21T20:32:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:32:20.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.125 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:32:20.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:32:20.130 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:32:20.130 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:32:20.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:32:20.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:32:20.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -34.130395
2026-01-21T22:32:20.131 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:32:20.940 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:20.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:20.960 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:20.960 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:21.741 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.991/1500.0
2026-01-21T22:32:22.133 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:32:22.150 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:32:22.150 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:32:22.150657    Obs time: 2026-01-21 20:31:46
2026-01-21T22:32:22.150 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:23.849343
2026-01-21T22:32:22.150 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86363
2026-01-21T22:32:22.150 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:31:46Z', 'guide_off', 'config_id 13432', 'config_status_id 17510148', 'update_OCS 17510148 ATTEMPTED', 'run_script setup_WD40_phot_17231395_13386_13432.json', 'run_script WD40_phot_17231395_13386_13432.json', 'update_OCS 17510148 COMPLETED 13432 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:45:00Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:32:22.150 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:32:23.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.941/1500.0
2026-01-21T22:32:23.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:23.962 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:23.962 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:23.962 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:25.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.897/1500.0
2026-01-21T22:32:26.965 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:26.986 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:26.986 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:26.986 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:27.890 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.836/1500.0
2026-01-21T22:32:29.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:32:29.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.793/1500.0
2026-01-21T22:32:29.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:30.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:30.007 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:30.007 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:31.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.747/1500.0
2026-01-21T22:32:33.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:33.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:33.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:33.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:34.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.692/1500.0
2026-01-21T22:32:36.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:36.046 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.664/1500.0
2026-01-21T22:32:36.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:36.050 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:36.050 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:38.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.635/1500.0
2026-01-21T22:32:39.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:39.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:39.076 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:39.076 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:39.167 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:32:40.135 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.607/1500.0
2026-01-21T22:32:42.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:42.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:42.127 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:42.128 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:42.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.547/1500.0
2026-01-21T22:32:44.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.508/1500.0
2026-01-21T22:32:45.131 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:45.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T22:32:45.150 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:45.150 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T22:32:46.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.479/1500.0
2026-01-21T22:32:48.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:48.172 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T22:32:48.172 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:48.172 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:48.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.419/1500.0
2026-01-21T22:32:49.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:32:50.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.38/1500.0
2026-01-21T22:32:51.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:51.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:51.193 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:51.193 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:52.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.351/1500.0
2026-01-21T22:32:54.196 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:54.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:32:54.197 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:54.197 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:32:54.435 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.291/1500.0
2026-01-21T22:32:56.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.246/1500.0
2026-01-21T22:32:57.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:32:57.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:32:57.216 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:32:57.216 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T22:32:58.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.224/1500.0
2026-01-21T22:32:59.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:33:00.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:00.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T22:33:00.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:00.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:00.526 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.179/1500.0
2026-01-21T22:33:02.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.156/1500.0
2026-01-21T22:33:03.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:03.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:03.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:03.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:04.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.128/1500.0
2026-01-21T22:33:06.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:06.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:06.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:06.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:06.675 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.068/1500.0
2026-01-21T22:33:08.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.007/1500.0
2026-01-21T22:33:09.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:33:09.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:09.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:09.262 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:09.262 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:10.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.963/1500.0
2026-01-21T22:33:12.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:12.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:12.265 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:12.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:12.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.934/1500.0
2026-01-21T22:33:14.842 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.906/1500.0
2026-01-21T22:33:15.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:15.284 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:15.284 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:15.284 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:16.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.84/1500.0
2026-01-21T22:33:18.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:18.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:18.285 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:18.286 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:18.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.803/1500.0
2026-01-21T22:33:19.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:33:19.224 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:32:46.322524
2026-01-21T22:33:19.224 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:32:46.322524
2026-01-21T22:33:19.224 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:33:19.224 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:33:19.224 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:33:19.224 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:33:19&start_after=2026-01-20T20:33:19&end_after=2026-01-21T20:33:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:33:19.342 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.353 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:33:19.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:33:19.359 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:33:19.359 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:33:19.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:33:19.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:33:19.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -93.359421
2026-01-21T22:33:19.360 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:33:20.937 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.775/1500.0
2026-01-21T22:33:21.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:21.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:21.305 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:21.305 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:21.361 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:33:21.362 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:33:21.362 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:33:21.362813    Obs time: 2026-01-21 20:31:46
2026-01-21T22:33:21.362 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:24.637187
2026-01-21T22:33:21.362 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86304
2026-01-21T22:33:21.362 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:31:46Z', 'guide_off', 'config_id 13432', 'config_status_id 17510171', 'update_OCS 17510171 ATTEMPTED', 'run_script setup_WD40_phot_17231418_13386_13432.json', 'run_script WD40_phot_17231418_13386_13432.json', 'update_OCS 17510171 COMPLETED 13432 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:45:00Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:33:21.362 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:33:22.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 92.745/1500.0
2026-01-21T22:33:24.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:24.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:24.307 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:24.307 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:25.063 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.684/1500.0
2026-01-21T22:33:27.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.618/1500.0
2026-01-21T22:33:27.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:27.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:27.326 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:27.326 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:28.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:33:29.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.579/1500.0
2026-01-21T22:33:30.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:30.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:30.330 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:30.330 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:31.234 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.515/1500.0
2026-01-21T22:33:33.300 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.448/1500.0
2026-01-21T22:33:33.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:33.355 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T22:33:33.355 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:33.355 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T22:33:35.339 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.383/1500.0
2026-01-21T22:33:36.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:36.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T22:33:36.358 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:36.358 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:37.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.343/1500.0
2026-01-21T22:33:38.379 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:33:39.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:39.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:39.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:39.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:39.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.304/1500.0
2026-01-21T22:33:41.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.281/1500.0
2026-01-21T22:33:42.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:42.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:42.405 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:42.405 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:43.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.241/1500.0
2026-01-21T22:33:45.408 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:45.428 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:45.428 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:45.428 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:45.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.219/1500.0
2026-01-21T22:33:47.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.159/1500.0
2026-01-21T22:33:48.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:33:48.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:48.431 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:48.431 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:48.431 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:49.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.119/1500.0
2026-01-21T22:33:51.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:51.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:51.453 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:51.453 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:51.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.069/1500.0
2026-01-21T22:33:53.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.003/1500.0
2026-01-21T22:33:54.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:54.455 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:54.455 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:54.455 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:55.789 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.959/1500.0
2026-01-21T22:33:57.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:33:57.476 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:33:57.476 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:33:57.476 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:33:57.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.893/1500.0
2026-01-21T22:33:58.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:33:59.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.829/1500.0
2026-01-21T22:34:00.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:00.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:00.496 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:00.496 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:01.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 53.783/1500.0
2026-01-21T22:34:03.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:03.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:03.498 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:03.498 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:03.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 51.755/1500.0
2026-01-21T22:34:06.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 49.732/1500.0
2026-01-21T22:34:06.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:06.502 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:06.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:06.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:08.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.666/1500.0
2026-01-21T22:34:08.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:34:09.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:09.524 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:09.524 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:09.524 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:10.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.599/1500.0
2026-01-21T22:34:12.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.562/1500.0
2026-01-21T22:34:12.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:12.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:12.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:12.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:14.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.533/1500.0
2026-01-21T22:34:15.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:15.548 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:15.548 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:15.548 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:16.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.472/1500.0
2026-01-21T22:34:18.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.433/1500.0
2026-01-21T22:34:18.414 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:34:18.436 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:33:46.523033
2026-01-21T22:34:18.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:33:46.523033
2026-01-21T22:34:18.437 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:34:18.437 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:34:18.437 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:34:18.437 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:34:18&start_after=2026-01-20T20:34:18&end_after=2026-01-21T20:34:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:34:18.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:18.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:18.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:18.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:18.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:34:18.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:34:18.576 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:34:18.576 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:34:18.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:34:18.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:34:18.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -152.576989
2026-01-21T22:34:18.577 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:34:20.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.405/1500.0
2026-01-21T22:34:20.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:34:20.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:34:20.580 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:34:20.580655    Obs time: 2026-01-21 20:31:46
2026-01-21T22:34:20.580 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:25.419345
2026-01-21T22:34:20.580 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86245
2026-01-21T22:34:20.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:31:46Z', 'guide_off', 'config_id 13538', 'config_status_id 17510203', 'update_OCS 17510203 ATTEMPTED', 'run_script setup_std_star_HD60753_17231450_13492_13538.json', 'run_script std_star_HD60753_17231450_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510203 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:40:02Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:34:20.580 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:34:21.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:21.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:21.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:21.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:22.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.339/1500.0
2026-01-21T22:34:24.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.3/1500.0
2026-01-21T22:34:24.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:24.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:24.577 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:24.577 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:26.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.251/1500.0
2026-01-21T22:34:27.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:27.586 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:34:27.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:27.601 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:27.601 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:28.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.206/1500.0
2026-01-21T22:34:30.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.146/1500.0
2026-01-21T22:34:30.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:30.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:30.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:30.603 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:32.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.107/1500.0
2026-01-21T22:34:33.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:33.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:33.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:33.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:34.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.078/1500.0
2026-01-21T22:34:36.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:36.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:36.645 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:36.645 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:36.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.018/1500.0
2026-01-21T22:34:37.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:34:38.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.979/1500.0
2026-01-21T22:34:39.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:39.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:39.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:39.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:40.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.919/1500.0
2026-01-21T22:34:42.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:42.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:42.673 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:42.673 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:42.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.879/1500.0
2026-01-21T22:34:44.892 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.851/1500.0
2026-01-21T22:34:45.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:45.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:45.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:45.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:46.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.79/1500.0
2026-01-21T22:34:47.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:34:48.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:48.699 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:48.699 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:48.699 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:49.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.725/1500.0
2026-01-21T22:34:51.030 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.68/1500.0
2026-01-21T22:34:51.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:51.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:51.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:51.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:53.058 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.652/1500.0
2026-01-21T22:34:54.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:34:54.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:34:54.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:34:54.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:34:55.124 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.624/1500.0
2026-01-21T22:34:56.410 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:34:56.410 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:34:56.412 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:34:57.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:34:57.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:34:57.746 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-21T22:34:57.746 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-21T22:34:57.746 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:34:57.746 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:34:57.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:34:57.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:34:57.746 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:34:57.746 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:34:57.746 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:34:57.746 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:34:57.757 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:34:57.758 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:34:57.758 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T22:34:57.758 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:34:57.758 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:34:57.831 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:34:58.832 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T22:34:58.832 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T22:34:58.832 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:34:58.832 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:34:58.846 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:34:59.848 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:34:59.899 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:35:00.900 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:35:00.901 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.17
2026-01-21T22:35:00.901 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:34:17
2026-01-21T22:35:00.901 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:34:17
2026-01-21T22:35:00.902 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:35:00.902 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0922591338582677
2026-01-21T22:35:00.905 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T22:35:00.905 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-21T22:35:00.905 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-21T22:35:01.931 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:35:03.953 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-21T22:35:03.953 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:35:03.953 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:35:03.953 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:35:03.953 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:35:03.955 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:35:03.955 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:35:03.957 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:35:04.123 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:35:04.123 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:35:04.124 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769027704.1249874
2026-01-21T22:35:04.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:35:04.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:35:04.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:35:04.975 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:35:04.975 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:35:04.975 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:35:07.622 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:35:07.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:35:07.999 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T22:35:07.999 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:35:07.999 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T22:35:09.387 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:35:09.387 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:35:09.405 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:35:09.615 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025pht_spec_17230727_13465_13511.json , Iteration 1/1, Unit 2/2 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-21T22:35:11.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:35:11.617 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-21T22:35:11.617 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:35:11.617 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:35:12.213 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:35:12.213 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script SN2025pht_spec_17230727_13465_13511.json was run successfully
2026-01-21T22:35:12.213 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:35:12.213 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:35:12.213 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:35:12.213 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:35:12.213 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:35:12.213 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:35:12.213 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:35:12.714 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:35:12.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:35:12.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:35:12.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:35:12.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:35:12.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:35:12.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:35:12.714 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:35:12.714 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:35:12.733 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 04:42:44.38872   Targ dec = -02:51:32.8248
2026-01-21T22:35:12.733 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:35:12.733 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:35:12.733 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:35:12.742 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:35:12.742 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:35:12.742 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:35:12.742 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:35:13.826 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:35:15.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:35:15.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:35:15.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:35:16.217 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:35:16.217 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:35:16.218 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17509480 COMPLETED 13511 reason
2026-01-21T22:35:16.218 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17509480 COMPLETED 13511 reason
2026-01-21T22:35:16.218 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:35:16.218 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:35:16.218 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:35:16.218 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:35:16.218 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:35:16.218 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:35:17.633 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:35:17.654 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:34:46.723908
2026-01-21T22:35:17.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:34:46.723908
2026-01-21T22:35:17.654 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:35:17.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:35:17.654 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:35:17.655 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:35:17&start_after=2026-01-20T20:35:17&end_after=2026-01-21T20:35:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:35:17.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:35:17.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:35:17.788 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:35:17.788 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:35:17.788 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13511
2026-01-21T22:35:17.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:35:17.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:35:17.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -211.789104
2026-01-21T22:35:17.789 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:35:19.221 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:35:19.221 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:35:19.791 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:35:19.814 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:35:19.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:35:19.814071    Obs time: 2026-01-21 20:31:46
2026-01-21T22:35:19.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:26.185929
2026-01-21T22:35:19.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86186
2026-01-21T22:35:19.814 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:31:46Z', 'guide_off', 'config_id 13538', 'config_status_id 17510203', 'update_OCS 17510203 ATTEMPTED', 'run_script setup_std_star_HD60753_17231450_13492_13538.json', 'run_script std_star_HD60753_17231450_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510203 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:40:02Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:35:19.814 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:35:21.223 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:35:21.223 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:35:21.223 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T22:35:21.223 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T22:35:21.223 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T22:35:21.225 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T22:35:21.225 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T20:31:46Z
2026-01-21T22:35:21.225 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:35:21.225 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:35:21.225 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:35:21.225 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:35:21.226 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:35:21.226 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:35:21.226 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:35:21.726 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:35:21.726 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:35:21.726 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:35:21.727 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:35:21.727 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:35:21.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:35:21.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:35:21.727 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:35:21.727 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:35:21.744 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 04:42:44.55252   Targ dec = -02:51:32.4648
2026-01-21T22:35:21.744 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:35:21.744 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:35:21.744 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:35:21.750 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:35:21.750 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:35:21.750 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:35:21.750 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:35:22.796 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:35:24.799 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:35:24.799 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:35:24.799 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:35:25.230 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:35:25.230 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:35:25.230 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T22:35:25.230 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T22:35:25.230 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T22:35:25.230 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17509480
2026-01-21T22:35:25.230 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T22:35:25.230 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T22:35:25.230 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T20:06:42', 'end': '2026-01-21T20:35:25', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1723.0', 'events': {}}} with config status ID 17509480
2026-01-21T22:35:25.376 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:35:25.376 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T19:58:32Z', 'guide_off', 'config_id 13511', 'config_status_id 17509480', 'update_OCS 17509480 ATTEMPTED', 'run_script setup_SN2025pht_spec_17230727_13465_13511.json', 'run_script SN2025pht_spec_17230727_13465_13511.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17509480 COMPLETED 13511 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:31:46Z', 'run_script arc_flat_lamp_off.json'] at time 22:35:25
2026-01-21T22:35:26.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:35:36.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:35:46.841 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:35:56.851 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:36:06.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:36:16.872 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:36:16.890 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:35:46.920467
2026-01-21T22:36:16.890 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:35:46.920467
2026-01-21T22:36:16.890 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:36:16.890 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:36:16.891 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:36:16.891 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:36:16&start_after=2026-01-20T20:36:16&end_after=2026-01-21T20:36:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:36:17.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:36:17.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:36:17.047 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:36:17.047 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 17 configurations
2026-01-21T22:36:17.047 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:36:17.048 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:31:46Z
2026-01-21T22:36:17.048 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -271.048045
2026-01-21T22:36:17.048 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:36:19.051 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:36:19.067 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:36:19.067 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:36:19.067340    Obs time: 2026-01-21 20:31:46
2026-01-21T22:36:19.067 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:26.932660
2026-01-21T22:36:19.067 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86126
2026-01-21T22:36:19.067 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:31:46Z', 'guide_off', 'config_id 13538', 'config_status_id 17510203', 'update_OCS 17510203 ATTEMPTED', 'run_script setup_std_star_HD60753_17231450_13492_13538.json', 'run_script std_star_HD60753_17231450_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510203 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:40:02Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:36:19.067 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T22:36:19.067 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T22:36:19.067 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T22:36:19.067 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T22:36:19.067 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:36:19.067 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:36:19.068 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:36:19.068 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:36:19.068 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:36:19.068 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:36:22.072 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:36:22.072 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:36:24.074 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:36:24.074 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:36:24.074 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T20:31:46Z
2026-01-21T22:36:24.074 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T20:31:46Z
2026-01-21T22:36:24.074 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:36:24.074 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:36:24.074 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:36:24.074 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:36:24.074 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:36:24.074 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:36:26.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:36:27.077 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:36:27.077 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:36:29.079 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:36:29.079 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:36:29.079 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13538
2026-01-21T22:36:29.079 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13538
2026-01-21T22:36:29.079 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17510203
2026-01-21T22:36:29.080 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17510203
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510203 ATTEMPTED
2026-01-21T22:36:29.080 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510203 ATTEMPTED
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:36:29.080 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:36:29.080 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:36:29.080 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 7.55759, 'targ_dec': -50.584213511367835, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '07:33:27.31', 'targ_dec': '-50:35:03.17', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_HD60753_17231450_13492_13538.json'}
2026-01-21T22:36:29.080 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:36:29.080 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510203
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T22:36:29.080 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17510203
2026-01-21T22:36:29.152 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:36:29.580 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:36:29.580 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_HD60753_17231450_13492_13538.json 1 times
2026-01-21T22:36:29.581 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:36:29.582 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T22:36:29.582 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T22:36:29.582 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T22:36:32.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:33.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:34.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:35.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:36.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:36:36.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:37.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:38.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:39.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:40.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:41.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:42.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:43.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:44.852 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:45.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:46.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:36:46.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:47.917 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:48.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:49.961 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:50.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:51.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:53.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:54.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:55.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:56.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:56.106 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:36:57.097 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:58.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:36:59.136 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:00.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:01.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:02.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:03.216 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:04.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:05.260 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:06.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:37:06.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:07.297 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:08.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:09.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:10.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:11.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:12.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:13.416 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:14.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:15.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:16.127 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:37:16.128 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:36:47.150818
2026-01-21T22:37:16.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:36:47.150818
2026-01-21T22:37:16.128 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:37:16.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:37:16.128 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:37:16.128 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:37:16&start_after=2026-01-20T20:37:16&end_after=2026-01-21T20:37:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:37:16.250 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.252 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.256 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.260 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.262 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:37:16.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:37:16.267 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:37:16.267 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:37:16.267 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:37:16.267 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:40:02Z
2026-01-21T22:37:16.267 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 165.732346
2026-01-21T22:37:16.268 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:37:16.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:17.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:18.270 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:37:18.271 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:37:18.271 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:37:18.271461    Obs time: 2026-01-21 20:40:02
2026-01-21T22:37:18.271 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:43.728539
2026-01-21T22:37:18.271 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  163
2026-01-21T22:37:18.271 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:37:18.519 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:19.537 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:20.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:21.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:22.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:23.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:24.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:37:25.278 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:37:25.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T22:37:25.654 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  7.5581538287852 is close enough to target ra = 7.55759
2026-01-21T22:37:25.654 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -50.5832245599915 is close enough to target dec = -50.584213511367835
2026-01-21T22:37:25.654 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T22:37:25.654 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:37:25.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:37:25.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:37:25.654 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:37:25.654 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T22:37:25.654 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T22:37:25.666 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:37:25.666 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:37:25.715 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:37:26.716 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:37:26.716 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:37:26.730 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:37:27.731 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:37:27.783 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:37:28.784 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:37:28.785 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.1
2026-01-21T22:37:28.786 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:36:25
2026-01-21T22:37:28.786 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:36:25
2026-01-21T22:37:28.786 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:37:28.786 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09230157480314959
2026-01-21T22:37:28.788 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T22:37:28.788 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T22:37:28.788 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T22:37:28.797 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:37:28.797 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:37:28.836 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:37:29.837 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:37:29.837 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:37:29.889 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:37:30.890 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:37:30.942 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:37:31.943 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:37:31.944 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.1
2026-01-21T22:37:31.991 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:36:25
2026-01-21T22:37:31.991 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:36:25
2026-01-21T22:37:31.991 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:37:31.992 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09230157480314959
2026-01-21T22:37:35.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:37:37.039 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T22:37:37.039 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:37:37.039 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:37:37.039 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:37:37.039 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:37:37.040 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:37:37.041 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:37:37.041 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:37:37.061 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:37:37.154 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:37:37.154 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:37:37.156 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769027857.1565628
2026-01-21T22:37:42.416 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:37:42.416 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:37:42.419 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:37:42.548 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T22:37:45.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:37:46.551 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T22:37:46.551 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T22:37:55.310 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:37:56.597 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T22:37:56.597 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T22:37:56.597 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 07:33:27.31 = 408109.65 arcseconds
2026-01-21T22:37:56.597 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -50:35:03.17 = -182103.17 arcseconds
2026-01-21T22:37:56.597 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T22:37:56.617 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T22:37:56.617 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.799863
2026-01-21T22:37:56.617 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T22:37:56.617 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (07:33:31.889, -50:34:53.874).
2026-01-21T22:37:56.617 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  07 33 31.889  -50 34 53.874 .
2026-01-21T22:37:56.617 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 07 33 31.889  -50 34 53.874 .
2026-01-21T22:37:56.617 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 408178.33499999996
2026-01-21T22:37:56.617 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -182093.874
2026-01-21T22:37:56.828 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T22:38:01.845 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T22:38:01.845 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:38:01.845 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:38:01.845 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:38:01.845 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:38:01.845 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:38:01.847 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:38:01.847 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:38:01.849 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:38:02.032 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:38:02.032 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:38:02.034 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769027882.0343416
2026-01-21T22:38:03.347 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:38:05.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:38:06.293 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:38:06.293 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:38:06.295 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:38:06.353 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T22:38:10.357 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T22:38:15.329 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:38:15.351 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:37:47.349385
2026-01-21T22:38:15.351 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:37:47.349385
2026-01-21T22:38:15.351 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:38:15.351 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:38:15.351 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:38:15.352 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:38:15&start_after=2026-01-20T20:38:15&end_after=2026-01-21T20:38:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:38:15.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.472 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.474 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.475 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.476 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.478 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.479 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.480 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.481 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.481 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.483 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.484 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.486 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:38:15.486 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:38:15.488 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:38:15.488 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:38:15.488 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:38:15.488 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:40:02Z
2026-01-21T22:38:15.488 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 106.511351
2026-01-21T22:38:15.489 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:38:17.491 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:38:17.511 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:38:17.512 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:38:17.511996    Obs time: 2026-01-21 20:40:02
2026-01-21T22:38:17.512 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:44.488004
2026-01-21T22:38:17.512 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  104
2026-01-21T22:38:17.512 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:38:20.408 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T22:38:20.408 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T22:38:20.408 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 07:33:27.31 = 408109.65 arcseconds
2026-01-21T22:38:20.408 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -50:35:03.17 = -182103.17 arcseconds
2026-01-21T22:38:20.408 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-21T22:38:20.428 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T22:38:20.428 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.701177
2026-01-21T22:38:20.428 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T22:38:20.428 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (07:33:33.344, -50:32:22.095).
2026-01-21T22:38:20.428 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  07 33 33.344  -50 32 22.095 .
2026-01-21T22:38:20.428 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 07 33 33.344  -50 32 22.095 .
2026-01-21T22:38:20.428 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 408200.16000000003
2026-01-21T22:38:20.428 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -181942.095
2026-01-21T22:38:20.640 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T22:38:24.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:38:25.664 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T22:38:25.664 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:38:25.664 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:38:25.664 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:38:25.664 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:38:25.664 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:38:25.666 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:38:25.666 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:38:25.668 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:38:25.799 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:38:25.800 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:38:25.801 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769027905.8017514
2026-01-21T22:38:27.166 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:38:30.061 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:38:30.061 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:38:30.079 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:38:30.172 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T22:38:34.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:38:34.774 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] nudge_star_to_slit: 609.6303112657511, 228.8660533600857
2026-01-21T22:38:34.774 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] WCS_Dec_D, rotation_angle =  -50.0, -0.701177
2026-01-21T22:38:34.774 [INFO] [script_worker] [instrument.py] [go_nudge_star_to_slit()] Not nudging star. RA nudge (5.7210906419126895) is greater than 3
2026-01-21T22:38:36.793 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:38:36.793 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:38:36.793 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:38:36.793 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:38:36.793 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:38:36.795 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:38:36.795 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:38:36.797 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:38:36.960 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:38:36.960 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:38:36.962 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769027916.9621403
2026-01-21T22:38:38.295 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:38:41.220 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:38:41.220 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:38:41.222 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:38:41.301 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T22:38:44.176 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2127  7902  14.3 to host 127.0.0.1 on port 12360
2026-01-21T22:38:44.176 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:38:44.176 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:38:44.560 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:38:47.177 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2127  7902  14.3
2026-01-21T22:38:47.177 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2127  7902  14.3
2026-01-21T22:38:49.179 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:38:54.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:39:04.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:39:14.592 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:39:14.612 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:38:47.550920
2026-01-21T22:39:14.612 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:38:47.550920
2026-01-21T22:39:14.613 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:39:14.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:39:14.613 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:39:14.613 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:39:14&start_after=2026-01-20T20:39:14&end_after=2026-01-21T20:39:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:39:14.744 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.745 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.746 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.747 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.747 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.748 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.750 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.751 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.752 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.753 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.754 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.755 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.756 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.757 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.759 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:39:14.759 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:39:14.761 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:39:14.761 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:39:14.761 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:39:14.761 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:40:02Z
2026-01-21T22:39:14.761 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 47.238328
2026-01-21T22:39:14.762 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:39:16.764 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:39:16.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:39:16.782 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:39:16.782333    Obs time: 2026-01-21 20:40:02
2026-01-21T22:39:16.782 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:45.217667
2026-01-21T22:39:16.782 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  45
2026-01-21T22:39:16.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:39:23.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:39:28.217 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T22:39:28.217 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:39:28.217 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:39:31.220 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T22:39:31.220 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T22:39:33.222 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:39:33.222 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:39:33.222 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:39:33.222 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:39:33.222 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:39:33.222 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:39:33.222 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:39:33.222 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:39:33.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:39:34.237 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:39:36.240 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:39:36.240 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:39:36.240 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:39:36.353 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:39:36.353 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_HD60753_17231450_13492_13538.json was run successfully
2026-01-21T22:39:36.353 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:39:36.353 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:39:36.353 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:39:36.353 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_HD60753_17231450_13492_13538.json
2026-01-21T22:39:36.353 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'HD60753', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '07:33:27.31', 'targ_dec': '-50:35:03.17', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 2500, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_HD60753_17231450_13492_13538.json'}
2026-01-21T22:39:36.353 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:39:36.353 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:39:36.854 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:39:36.855 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_HD60753_17231450_13492_13538.json 1 times
2026-01-21T22:39:36.855 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-21T22:39:36.855 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:39:36.855 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:39:36.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:39:36.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:39:36.855 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:39:36.856 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:39:36.856 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:39:36.856 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:39:36.869 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:39:36.872 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:39:36.872 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T22:39:36.872 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:39:36.872 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:39:36.944 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:39:37.945 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T22:39:37.946 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T22:39:37.946 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:39:37.946 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:39:37.959 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:39:38.961 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:39:39.012 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:39:40.014 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:39:40.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.93
2026-01-21T22:39:40.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:39:06
2026-01-21T22:39:40.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:39:06
2026-01-21T22:39:40.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:39:40.018 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09240464566929131
2026-01-21T22:39:40.023 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T22:39:40.023 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:39:40.024 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:39:41.057 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:39:43.062 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='07:33:27.31', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-50:35:03.17', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='HD60753', comment='The object name')]
2026-01-21T22:39:43.062 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:39:43.063 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:39:43.063 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:39:43.063 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:39:43.067 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:39:43.067 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:39:43.074 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:39:43.234 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:39:43.234 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:39:43.238 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769027983.238138
2026-01-21T22:39:43.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:39:43.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:39:43.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:39:44.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:39:44.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00099999999998
2026-01-21T22:39:44.082 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:39:44.082 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T22:39:47.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:39:47.087 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-21T22:39:47.087 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:39:47.087 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:39:48.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:39:50.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:39:50.111 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-21T22:39:50.111 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:39:50.111 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T22:39:50.745 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:39:52.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:39:53.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:39:53.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-21T22:39:53.117 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:39:53.117 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:39:53.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:39:54.845 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:39:56.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:39:56.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:39:56.138 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:39:56.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:39:56.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:39:58.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:39:59.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:39:59.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:39:59.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:39:59.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:40:01.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:40:02.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:40:02.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:40:02.186 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:40:02.186 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:40:03.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:40:03.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:40:05.115 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:40:05.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:40:05.192 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:40:05.192 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:40:05.192 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:40:07.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:40:08.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:40:08.211 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:40:08.212 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:40:08.212 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:40:09.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/2.5
2026-01-21T22:40:09.568 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:40:09.569 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:40:09.592 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:40:11.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:40:11.223 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-21T22:40:11.223 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-21T22:40:11.224 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:40:11.224 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:40:11.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:40:11.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:40:11.224 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:40:11.225 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:40:11.225 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:40:11.225 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:40:11.241 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:40:11.244 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:40:11.244 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T22:40:11.244 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:40:11.244 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:40:11.311 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:40:12.313 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T22:40:12.313 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T22:40:12.313 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:40:12.313 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:40:12.364 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:40:13.366 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:40:13.417 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:40:13.844 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:40:13.846 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:39:47.751662
2026-01-21T22:40:13.847 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:39:47.751662
2026-01-21T22:40:13.847 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:40:13.847 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:40:13.848 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:40:13.848 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:40:13&start_after=2026-01-20T20:40:13&end_after=2026-01-21T20:40:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:40:13.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:13.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:13.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:13.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:13.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:14.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:14.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:14.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:14.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:40:14.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:40:14.026 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:40:14.026 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:40:14.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:40:14.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:40:02Z
2026-01-21T22:40:14.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -12.026423
2026-01-21T22:40:14.027 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:40:14.419 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:40:14.421 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.07
2026-01-21T22:40:14.421 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:39:38
2026-01-21T22:40:14.422 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:39:38
2026-01-21T22:40:14.422 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:40:14.422 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09231976377952754
2026-01-21T22:40:14.425 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T22:40:14.426 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-21T22:40:14.426 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-21T22:40:15.482 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:40:16.029 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:40:16.031 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:40:16.031 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:40:16.031889    Obs time: 2026-01-21 20:40:02
2026-01-21T22:40:16.032 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:45.968111
2026-01-21T22:40:16.032 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86385
2026-01-21T22:40:16.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:40:02Z', 'guide_off', 'config_id 13392', 'config_status_id 17510329', 'update_OCS 17510329 ATTEMPTED', 'run_script setup_SN2025advo_phot_17231576_13346_13392.json', 'run_script SN2025advo_phot_17231576_13346_13392.json', 'update_OCS 17510329 COMPLETED 13392 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:58:28Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:40:16.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:40:17.506 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-21T22:40:17.506 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:40:17.506 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:40:17.507 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:40:17.507 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:40:17.511 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:40:17.511 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:40:17.518 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:40:17.659 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:40:17.659 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:40:17.663 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028017.6634157
2026-01-21T22:40:18.008 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:40:18.009 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:40:18.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:40:18.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:40:18.529 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:40:18.529 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:40:21.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:40:21.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:40:21.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:40:21.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:40:23.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:40:23.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_HD60753_17231450_13492_13538.json , Iteration 1/1, Unit 2/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-21T22:40:23.941 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:40:23.941 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:40:23.947 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:40:24.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:40:25.086 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-21T22:40:25.086 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:40:25.087 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:40:25.406 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:40:25.406 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_HD60753_17231450_13492_13538.json was run successfully
2026-01-21T22:40:25.406 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:40:25.406 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:40:25.407 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:40:25.407 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:40:25.407 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:40:25.408 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:40:25.408 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:40:25.908 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:40:25.908 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:40:25.908 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:40:25.908 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:40:25.909 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:40:25.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:40:25.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:40:25.909 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:40:25.909 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:40:25.933 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 07:34:14.32596   Targ dec = -50:35:51.7668
2026-01-21T22:40:25.934 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:40:25.934 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:40:25.934 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:40:25.947 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:40:25.947 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:40:25.948 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:40:25.948 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:40:27.031 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:40:29.033 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:40:29.034 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:40:29.034 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:40:29.413 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:40:29.413 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:40:29.413 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510203 COMPLETED 13538 reason
2026-01-21T22:40:29.413 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510203 COMPLETED 13538 reason
2026-01-21T22:40:29.414 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:40:29.414 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:40:29.414 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:40:29.414 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:40:29.414 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:40:29.414 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:40:32.418 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:40:32.418 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:40:33.049 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:40:34.421 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:40:34.421 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:40:34.421 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T22:40:34.421 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T22:40:34.422 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T22:40:34.426 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T22:40:34.426 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T20:40:02Z
2026-01-21T22:40:34.426 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:40:34.426 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:40:34.427 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:40:34.427 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:40:34.427 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:40:34.428 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:40:34.428 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:40:34.928 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:40:34.929 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:40:34.929 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:40:34.929 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:40:34.929 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:40:34.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:40:34.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:40:34.929 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:40:34.930 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:40:34.933 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 07:34:14.4876   Targ dec = -50:35:51.6768
2026-01-21T22:40:34.933 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:40:34.933 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:40:34.933 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:40:34.940 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:40:34.940 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:40:34.940 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:40:34.940 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:40:35.980 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:40:37.982 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:40:37.982 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:40:37.982 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:40:38.433 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:40:38.433 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:40:38.434 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T22:40:38.434 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T22:40:38.434 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T22:40:38.434 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510203
2026-01-21T22:40:38.434 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T22:40:38.434 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T22:40:38.434 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T20:36:19', 'end': '2026-01-21T20:40:38', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '259.0', 'events': {}}} with config status ID 17510203
2026-01-21T22:40:38.597 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:40:38.597 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:31:46Z', 'guide_off', 'config_id 13538', 'config_status_id 17510203', 'update_OCS 17510203 ATTEMPTED', 'run_script setup_std_star_HD60753_17231450_13492_13538.json', 'run_script std_star_HD60753_17231450_13492_13538.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510203 COMPLETED 13538 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:40:02Z', 'run_script arc_flat_lamp_off.json'] at time 22:40:38
2026-01-21T22:40:43.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:40:53.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:41:03.081 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:41:13.092 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:41:13.093 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:40:47.951311
2026-01-21T22:41:13.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:40:47.951311
2026-01-21T22:41:13.093 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:41:13.093 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:41:13.093 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:41:13.093 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:41:13&start_after=2026-01-20T20:41:13&end_after=2026-01-21T20:41:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:41:13.209 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.213 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:41:13.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:41:13.226 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:41:13.226 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 16 configurations
2026-01-21T22:41:13.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:41:13.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:40:02Z
2026-01-21T22:41:13.226 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -71.22624
2026-01-21T22:41:13.227 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:41:15.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:41:15.229 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:41:15.229 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:41:15.229979    Obs time: 2026-01-21 20:40:02
2026-01-21T22:41:15.230 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:46.770021
2026-01-21T22:41:15.230 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86326
2026-01-21T22:41:15.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:40:02Z', 'guide_off', 'config_id 13392', 'config_status_id 17510351', 'update_OCS 17510351 ATTEMPTED', 'run_script setup_SN2025advo_phot_17231598_13346_13392.json', 'run_script SN2025advo_phot_17231598_13346_13392.json', 'update_OCS 17510351 COMPLETED 13392 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:58:28Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:41:15.230 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T22:41:15.230 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T22:41:15.230 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T22:41:15.230 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T22:41:15.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:41:15.230 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:41:15.231 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:41:15.231 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:41:15.231 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:41:15.231 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:41:18.234 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:41:18.234 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:41:20.236 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:41:20.236 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:41:20.236 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T20:40:02Z
2026-01-21T22:41:20.236 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T20:40:02Z
2026-01-21T22:41:20.236 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:41:20.237 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:41:20.237 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:41:20.237 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:41:20.237 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:41:20.237 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:41:22.237 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:41:23.240 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:41:23.240 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:41:25.242 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:41:25.242 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13392
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13392
2026-01-21T22:41:25.242 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17510351
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17510351
2026-01-21T22:41:25.242 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510351 ATTEMPTED
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510351 ATTEMPTED
2026-01-21T22:41:25.242 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:41:25.242 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:41:25.242 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 8.29441, 'targ_dec': 4.61476787169, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_SN2025advo_phot_17231598_13346_13392.json'}
2026-01-21T22:41:25.243 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:41:25.243 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:41:25.243 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T22:41:25.243 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510351
2026-01-21T22:41:25.243 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T22:41:25.243 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T22:41:25.243 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17510351
2026-01-21T22:41:25.322 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:41:25.743 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:41:25.743 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_SN2025advo_phot_17231598_13346_13392.json 1 times
2026-01-21T22:41:25.743 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:41:25.745 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T22:41:25.745 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T22:41:25.745 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T22:41:28.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:29.771 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:30.789 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:31.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:32.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:41:32.829 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:33.850 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:34.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:35.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:36.907 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:37.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:38.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:39.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:40.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:41.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:42.258 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:41:43.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:44.044 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:45.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:46.080 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:47.101 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:48.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:49.141 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:50.164 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:51.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:52.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:52.269 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:41:53.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:54.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:55.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:41:56.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T22:41:56.280 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  8.29490497119685 is close enough to target ra = 8.29441
2026-01-21T22:41:56.280 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  4.6152833992445 is close enough to target dec = 4.61476787169
2026-01-21T22:41:56.280 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T22:41:56.280 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:41:56.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:41:56.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:41:56.280 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:41:56.280 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T22:41:56.280 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T22:41:56.292 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:41:56.292 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:41:56.367 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:41:57.368 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:41:57.368 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:41:57.420 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:41:58.421 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:41:58.473 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:41:59.474 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:41:59.476 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.98
2026-01-21T22:41:59.476 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:41:47
2026-01-21T22:41:59.476 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:41:47
2026-01-21T22:41:59.476 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:41:59.476 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0923743307086614
2026-01-21T22:41:59.479 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T22:41:59.480 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T22:41:59.480 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T22:41:59.487 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:41:59.487 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:41:59.526 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:42:00.527 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:42:00.527 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:42:00.579 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:42:01.580 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:42:01.632 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:42:02.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:42:02.633 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:42:02.635 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.98
2026-01-21T22:42:02.635 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:41:47
2026-01-21T22:42:02.635 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:41:47
2026-01-21T22:42:02.635 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:42:02.635 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0923743307086614
2026-01-21T22:42:07.701 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T22:42:07.701 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:42:07.701 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:42:07.701 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:42:07.701 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:42:07.701 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:42:07.703 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:42:07.703 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:42:07.705 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:42:07.816 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:42:07.816 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:42:07.818 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028127.8181663
2026-01-21T22:42:12.289 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:42:12.309 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:41:48.153181
2026-01-21T22:42:12.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:41:48.153181
2026-01-21T22:42:12.309 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:42:12.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:42:12.309 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:42:12.310 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:42:12&start_after=2026-01-20T20:42:12&end_after=2026-01-21T20:42:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:42:12.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.481 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.483 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.484 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.485 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.486 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.487 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.488 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.490 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.491 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:42:12.492 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:42:12.493 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:42:12.493 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:42:12.493 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:42:12.494 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:05:12Z
2026-01-21T22:42:12.494 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1379.505939
2026-01-21T22:42:12.494 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T22:42:13.079 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:42:13.079 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:42:13.081 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:42:13.209 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T22:42:17.213 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T22:42:17.213 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T22:42:21.503 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:42:27.266 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T22:42:27.266 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T22:42:27.266 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:17:39.88 = 447898.2 arcseconds
2026-01-21T22:42:27.266 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 04:36:53.16 = 16613.16 arcseconds
2026-01-21T22:42:27.266 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T22:42:27.287 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T22:42:27.287 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.713087
2026-01-21T22:42:27.287 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T22:42:27.288 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:17:42.753, +04:36:53.714).
2026-01-21T22:42:27.288 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 17 42.753  +04 36 53.714 .
2026-01-21T22:42:27.288 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 17 42.753  +04 36 53.714 .
2026-01-21T22:42:27.288 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 447941.295
2026-01-21T22:42:27.288 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: 16613.714
2026-01-21T22:42:27.499 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T22:42:31.513 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:42:32.523 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T22:42:32.523 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:42:32.523 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:42:32.523 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:42:32.523 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:42:32.523 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:42:32.525 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:42:32.525 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:42:32.527 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:42:32.633 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:42:32.633 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:42:32.634 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028152.6349413
2026-01-21T22:42:34.025 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:42:36.893 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:42:36.893 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:42:36.913 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:42:37.030 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T22:42:41.033 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T22:42:41.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:42:51.080 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T22:42:51.080 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T22:42:51.080 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:17:39.88 = 447898.2 arcseconds
2026-01-21T22:42:51.080 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 04:36:53.16 = 16613.16 arcseconds
2026-01-21T22:42:51.080 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T22:42:51.100 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T22:42:51.100 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.70612
2026-01-21T22:42:51.100 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T22:42:51.100 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:17:39.893, +04:36:52.835).
2026-01-21T22:42:51.100 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 17 39.893  +04 36 52.835 .
2026-01-21T22:42:51.100 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 17 39.893  +04 36 52.835 .
2026-01-21T22:42:51.100 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 447898.395
2026-01-21T22:42:51.100 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: 16612.835
2026-01-21T22:42:51.311 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T22:42:51.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:42:56.336 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T22:42:56.336 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:42:56.336 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:42:56.336 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:42:56.336 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:42:56.336 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:42:56.338 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:42:56.338 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:42:56.340 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:42:56.472 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:42:56.472 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:42:56.474 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028176.4739947
2026-01-21T22:42:57.838 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:43:00.733 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:43:00.734 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:43:00.755 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:43:00.844 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T22:43:01.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:43:06.868 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T22:43:06.868 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:43:06.868 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:43:06.868 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:43:06.868 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:43:06.870 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:43:06.870 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:43:06.871 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:43:07.000 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:43:07.000 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:43:07.002 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028187.0024834
2026-01-21T22:43:08.370 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T22:43:11.262 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:43:11.262 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:43:11.283 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:43:11.376 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T22:43:11.557 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:43:11.583 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:42:48.352066
2026-01-21T22:43:11.593 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:42:48.352066
2026-01-21T22:43:11.603 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:43:11.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:43:11.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:43:11.659 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:43:11&start_after=2026-01-20T20:43:11&end_after=2026-01-21T20:43:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:43:11.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:11.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:11.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:12.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:12.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.100 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:12.101 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:12.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:12.133 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.180 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:43:12.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:43:12.252 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:43:12.263 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:43:12.273 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:43:12.283 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:43:12.294 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 915.70601
2026-01-21T22:43:12.304 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:43:12.304224    Obs time: 2026-01-21 20:58:28
2026-01-21T22:43:12.314 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:15.695776
2026-01-21T22:43:12.324 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  915
2026-01-21T22:43:12.334 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:43:18.695 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2107  5618  14.1 to host 127.0.0.1 on port 12360
2026-01-21T22:43:18.695 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:43:18.695 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:43:21.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:43:21.697 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2107  5618  14.1
2026-01-21T22:43:21.697 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2107  5618  14.1
2026-01-21T22:43:23.699 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:43:31.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:43:41.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:43:51.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:44:01.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:44:02.773 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T22:44:02.774 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:44:02.774 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:44:05.777 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T22:44:05.777 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T22:44:07.779 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:44:07.779 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:44:07.779 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:44:07.779 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:44:07.779 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:44:07.779 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:44:07.779 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:44:07.779 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:44:08.814 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:44:10.816 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:44:10.816 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:44:10.816 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:44:11.437 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:44:11.456 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:43:48.555148
2026-01-21T22:44:11.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:43:48.555148
2026-01-21T22:44:11.456 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:44:11.456 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:44:11.456 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:44:11.456 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:44:11&start_after=2026-01-20T20:44:11&end_after=2026-01-21T20:44:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:44:11.528 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:44:11.528 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_SN2025advo_phot_17231598_13346_13392.json was run successfully
2026-01-21T22:44:11.529 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:44:11.529 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:44:11.529 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:44:11.529 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script SN2025advo_phot_17231598_13346_13392.json
2026-01-21T22:44:11.529 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 1, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 360000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}], 'script_name': 'SN2025advo_phot_17231598_13346_13392.json'}
2026-01-21T22:44:11.529 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:44:11.529 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:44:11.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.587 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.588 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:44:11.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 856.407596
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:44:11.592436    Obs time: 2026-01-21 20:58:28
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:16.407564
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  856
2026-01-21T22:44:11.592 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:44:12.029 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:44:12.029 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script SN2025advo_phot_17231598_13346_13392.json 1 times
2026-01-21T22:44:12.030 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-21T22:44:12.030 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:44:12.030 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:44:12.030 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:44:12.030 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:44:12.030 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:44:12.030 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:44:12.030 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:44:12.030 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:44:12.041 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:44:12.042 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:44:12.042 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 1
2026-01-21T22:44:12.042 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:1
2026-01-21T22:44:12.042 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 1
2026-01-21T22:44:12.234 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 1
2026-01-21T22:44:13.254 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 2
2026-01-21T22:44:14.274 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 3
2026-01-21T22:44:15.295 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 4
2026-01-21T22:44:16.360 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 1 successfully
2026-01-21T22:44:17.361 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:44:17.413 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-21T22:44:18.414 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:44:18.416 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.9
2026-01-21T22:44:18.416 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:43:55
2026-01-21T22:44:18.416 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:43:55
2026-01-21T22:44:18.416 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.19, 2879
2026-01-21T22:44:18.416 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.10066216535433069
2026-01-21T22:44:18.419 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 1
2026-01-21T22:44:18.419 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:44:18.419 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:44:18.419 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:44:18.428 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-21T22:44:19.430 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:44:19.430 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:44:19.430 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:44:20.467 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:44:20.601 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:44:22.470 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T22:44:22.470 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:44:22.471 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:44:22.471 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:44:22.471 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:44:22.473 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:44:22.473 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:44:22.474 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:44:22.575 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:44:22.575 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:44:22.577 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028262.577116
2026-01-21T22:44:22.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:44:22.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:44:23.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:23.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:44:23.490 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:23.490 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:44:26.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:26.515 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:44:26.515 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:26.515 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:44:28.064 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 354.554/360.0
2026-01-21T22:44:29.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:29.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:44:29.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:29.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:44:30.094 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 352.514/360.0
2026-01-21T22:44:30.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:44:32.124 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 350.485/360.0
2026-01-21T22:44:32.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:32.538 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:44:32.538 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:32.538 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:44:34.155 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.454/360.0
2026-01-21T22:44:35.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:35.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:44:35.589 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:35.589 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:44:36.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.423/360.0
2026-01-21T22:44:38.216 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.394/360.0
2026-01-21T22:44:38.592 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:38.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:44:38.593 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:38.593 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:44:40.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.362/360.0
2026-01-21T22:44:40.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:44:41.596 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:41.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:44:41.617 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:41.617 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:44:42.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.331/360.0
2026-01-21T22:44:44.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.3/360.0
2026-01-21T22:44:44.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:44.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:44:44.619 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:44.619 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:44:46.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.271/360.0
2026-01-21T22:44:47.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:47.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:44:47.637 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:47.637 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:44:48.368 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.241/360.0
2026-01-21T22:44:50.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 332.21/360.0
2026-01-21T22:44:50.628 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:44:50.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:50.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:44:50.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:50.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:44:52.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 330.179/360.0
2026-01-21T22:44:53.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:53.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:44:53.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:53.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:44:54.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 328.15/360.0
2026-01-21T22:44:56.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 326.118/360.0
2026-01-21T22:44:56.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:56.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:44:56.663 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:56.663 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:44:58.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 324.087/360.0
2026-01-21T22:44:59.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:44:59.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:44:59.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:44:59.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:45:00.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 322.057/360.0
2026-01-21T22:45:00.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:45:02.581 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 320.026/360.0
2026-01-21T22:45:02.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:02.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:45:02.684 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:02.684 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:04.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 317.996/360.0
2026-01-21T22:45:05.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:05.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:45:05.711 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:05.711 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:06.642 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 315.966/360.0
2026-01-21T22:45:08.672 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 313.937/360.0
2026-01-21T22:45:08.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:08.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:45:08.713 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:08.713 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:45:10.647 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:45:10.648 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:44:48.764613
2026-01-21T22:45:10.648 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:44:48.764613
2026-01-21T22:45:10.648 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:45:10.648 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:45:10.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:45:10.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:45:10&start_after=2026-01-20T20:45:10&end_after=2026-01-21T20:45:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:45:10.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 311.905/360.0
2026-01-21T22:45:10.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:45:10.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:45:10.782 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:45:10.782 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:45:10.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:45:10.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:45:10.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 797.217013
2026-01-21T22:45:10.783 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:45:10.783020    Obs time: 2026-01-21 20:58:28
2026-01-21T22:45:10.783 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:17.216980
2026-01-21T22:45:10.783 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  797
2026-01-21T22:45:10.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:45:11.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:11.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:45:11.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:11.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:45:12.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 309.874/360.0
2026-01-21T22:45:14.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:14.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:45:14.741 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:14.741 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:14.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 307.844/360.0
2026-01-21T22:45:16.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.814/360.0
2026-01-21T22:45:17.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:17.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:45:17.760 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:17.760 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:45:18.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 303.783/360.0
2026-01-21T22:45:19.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:45:20.763 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:20.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:45:20.785 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:20.785 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:45:20.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.753/360.0
2026-01-21T22:45:22.885 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.723/360.0
2026-01-21T22:45:23.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:23.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:45:23.789 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:23.789 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:45:24.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.692/360.0
2026-01-21T22:45:26.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:26.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:45:26.809 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:26.809 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:26.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.662/360.0
2026-01-21T22:45:28.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.631/360.0
2026-01-21T22:45:29.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:45:29.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:29.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:45:29.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:29.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:31.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.601/360.0
2026-01-21T22:45:32.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:32.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:45:32.833 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:32.833 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:33.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.57/360.0
2026-01-21T22:45:35.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.54/360.0
2026-01-21T22:45:35.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:35.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T22:45:35.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:35.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:45:37.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 285.509/360.0
2026-01-21T22:45:38.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:38.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T22:45:38.868 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:38.868 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:39.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 283.479/360.0
2026-01-21T22:45:39.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:45:41.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 281.448/360.0
2026-01-21T22:45:41.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:41.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:45:41.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:41.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:45:43.190 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 279.418/360.0
2026-01-21T22:45:44.875 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:44.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:45:44.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:44.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:45.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 277.387/360.0
2026-01-21T22:45:47.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 275.357/360.0
2026-01-21T22:45:47.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:47.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:45:47.902 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:47.902 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:45:49.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 273.327/360.0
2026-01-21T22:45:49.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:45:50.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:50.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:45:50.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:50.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:51.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 271.296/360.0
2026-01-21T22:45:53.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 269.266/360.0
2026-01-21T22:45:53.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:53.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:45:53.928 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:53.928 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:45:55.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 267.235/360.0
2026-01-21T22:45:56.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:56.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:45:56.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:56.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:45:57.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 265.207/360.0
2026-01-21T22:45:59.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 263.174/360.0
2026-01-21T22:45:59.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:45:59.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:45:59.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:45:59.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:45:59.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:46:01.464 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 261.146/360.0
2026-01-21T22:46:02.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:02.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00000000000003
2026-01-21T22:46:02.980 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:02.980 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T22:46:03.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 259.114/360.0
2026-01-21T22:46:05.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 257.085/360.0
2026-01-21T22:46:05.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:05.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.001
2026-01-21T22:46:05.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:05.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:46:07.555 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 255.055/360.0
2026-01-21T22:46:08.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:09.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.999
2026-01-21T22:46:09.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:09.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:46:09.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 253.023/360.0
2026-01-21T22:46:09.838 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:46:09.839 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:45:48.963244
2026-01-21T22:46:09.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:45:48.963244
2026-01-21T22:46:09.839 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:46:09.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:46:09.839 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:46:09.839 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:46:09&start_after=2026-01-20T20:46:09&end_after=2026-01-21T20:46:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:46:09.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.975 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.985 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.988 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:46:09.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:46:09.990 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:46:09.990 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:46:09.990 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:46:09.990 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:46:09.990 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 738.009052
2026-01-21T22:46:09.990 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:46:09.990980    Obs time: 2026-01-21 20:58:28
2026-01-21T22:46:09.991 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:18.009020
2026-01-21T22:46:09.991 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  738
2026-01-21T22:46:09.991 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:46:11.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 250.992/360.0
2026-01-21T22:46:12.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:12.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:46:12.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:12.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:46:13.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 248.963/360.0
2026-01-21T22:46:15.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:15.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:46:15.010 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:15.010 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:46:15.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 246.931/360.0
2026-01-21T22:46:17.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 244.901/360.0
2026-01-21T22:46:18.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:18.039 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.00000000000003
2026-01-21T22:46:18.039 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:18.039 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T22:46:19.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:46:19.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 242.871/360.0
2026-01-21T22:46:21.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:21.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00099999999998
2026-01-21T22:46:21.061 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:21.061 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:46:21.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 240.84/360.0
2026-01-21T22:46:23.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 238.811/360.0
2026-01-21T22:46:24.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:24.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:46:24.065 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:24.065 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:46:25.829 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 236.779/360.0
2026-01-21T22:46:27.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:27.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:46:27.091 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:27.091 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:46:27.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 234.749/360.0
2026-01-21T22:46:29.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:46:29.890 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 232.719/360.0
2026-01-21T22:46:30.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:30.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:46:30.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:30.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:46:31.920 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 230.688/360.0
2026-01-21T22:46:33.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:33.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:46:33.113 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:33.113 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:46:33.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 228.657/360.0
2026-01-21T22:46:35.981 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 226.627/360.0
2026-01-21T22:46:36.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:36.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:46:36.132 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:36.132 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:46:38.011 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 224.597/360.0
2026-01-21T22:46:39.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:46:39.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:39.148 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T22:46:39.148 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:39.148 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:46:40.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 222.567/360.0
2026-01-21T22:46:42.072 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 220.537/360.0
2026-01-21T22:46:42.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:42.152 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.999
2026-01-21T22:46:42.152 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:42.152 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:46:44.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 218.505/360.0
2026-01-21T22:46:45.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:45.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:46:45.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:45.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:46:46.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 216.475/360.0
2026-01-21T22:46:48.163 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 214.435/360.0
2026-01-21T22:46:48.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:48.192 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:46:48.192 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:48.192 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:46:49.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:46:50.194 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 212.414/360.0
2026-01-21T22:46:51.195 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:51.196 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T22:46:51.196 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:51.196 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:46:52.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 210.384/360.0
2026-01-21T22:46:54.199 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:54.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-21T22:46:54.215 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:54.215 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:46:54.255 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 208.353/360.0
2026-01-21T22:46:56.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 206.323/360.0
2026-01-21T22:46:57.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:46:57.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:46:57.219 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:46:57.219 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:46:58.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 204.294/360.0
2026-01-21T22:46:59.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:47:00.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:00.239 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:47:00.239 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:00.239 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:47:00.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 202.263/360.0
2026-01-21T22:47:02.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 200.233/360.0
2026-01-21T22:47:03.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:03.243 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:47:03.243 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:03.243 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:04.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 198.202/360.0
2026-01-21T22:47:06.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:06.264 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:47:06.264 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:06.264 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:06.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 196.171/360.0
2026-01-21T22:47:08.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 194.14/360.0
2026-01-21T22:47:09.044 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:47:09.045 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:46:49.163888
2026-01-21T22:47:09.045 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:46:49.163888
2026-01-21T22:47:09.045 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:47:09.045 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:47:09.045 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:47:09.045 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:47:09&start_after=2026-01-20T20:47:09&end_after=2026-01-21T20:47:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:47:09.159 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.164 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.167 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.167 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.170 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.171 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:47:09.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 678.824272
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:47:09.175760    Obs time: 2026-01-21 20:58:28
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:18.824240
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  678
2026-01-21T22:47:09.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:47:09.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:09.268 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:47:09.268 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:09.268 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:10.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 192.11/360.0
2026-01-21T22:47:12.271 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:12.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:47:12.293 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:12.293 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:47:12.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 190.08/360.0
2026-01-21T22:47:14.559 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 188.049/360.0
2026-01-21T22:47:15.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:15.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:47:15.317 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:15.317 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:47:16.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 186.019/360.0
2026-01-21T22:47:18.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:47:18.320 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:18.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:47:18.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:18.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:47:18.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 183.988/360.0
2026-01-21T22:47:20.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 181.958/360.0
2026-01-21T22:47:21.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:21.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:47:21.342 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:21.342 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:47:22.680 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 179.927/360.0
2026-01-21T22:47:24.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:24.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:47:24.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:24.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:47:24.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 177.897/360.0
2026-01-21T22:47:26.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 175.866/360.0
2026-01-21T22:47:27.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:27.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:47:27.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:27.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:28.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:47:28.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 173.799/360.0
2026-01-21T22:47:30.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:30.391 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:47:30.391 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:30.391 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:47:30.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 171.77/360.0
2026-01-21T22:47:32.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 169.738/360.0
2026-01-21T22:47:33.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:33.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:47:33.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:33.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:47:34.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.707/360.0
2026-01-21T22:47:36.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:36.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:47:36.417 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:36.417 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:36.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.678/360.0
2026-01-21T22:47:38.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:47:38.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 163.646/360.0
2026-01-21T22:47:39.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:39.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:47:39.419 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:39.419 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:47:40.992 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 161.618/360.0
2026-01-21T22:47:42.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:42.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:47:42.441 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:42.441 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:43.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 159.586/360.0
2026-01-21T22:47:45.053 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 157.555/360.0
2026-01-21T22:47:45.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:45.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:47:45.445 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:45.445 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:47.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 155.524/360.0
2026-01-21T22:47:48.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:47:48.448 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:48.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:47:48.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:48.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:49.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.494/360.0
2026-01-21T22:47:51.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.463/360.0
2026-01-21T22:47:51.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:51.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:47:51.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:51.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:53.175 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.432/360.0
2026-01-21T22:47:54.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:54.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:47:54.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:54.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:47:55.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.403/360.0
2026-01-21T22:47:57.236 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.371/360.0
2026-01-21T22:47:57.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:47:57.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:47:57.494 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:47:57.494 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:47:58.217 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:47:59.267 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.343/360.0
2026-01-21T22:48:00.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:00.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:48:00.512 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:00.512 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:48:01.298 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.311/360.0
2026-01-21T22:48:03.328 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.282/360.0
2026-01-21T22:48:03.515 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:03.516 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:48:03.516 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:03.516 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:05.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.249/360.0
2026-01-21T22:48:06.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:06.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:48:06.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:06.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:48:07.389 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.219/360.0
2026-01-21T22:48:08.226 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:48:08.247 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:47:49.372495
2026-01-21T22:48:08.247 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:47:49.372495
2026-01-21T22:48:08.247 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:48:08.247 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:48:08.247 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:48:08.247 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:48:08&start_after=2026-01-20T20:48:08&end_after=2026-01-21T20:48:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:48:08.364 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.364 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.366 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.368 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.370 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.375 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:48:08.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 619.619362
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:48:08.380672    Obs time: 2026-01-21 20:58:28
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:19.619328
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  619
2026-01-21T22:48:08.380 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:48:09.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.19/360.0
2026-01-21T22:48:09.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:09.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:48:09.558 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:09.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:48:11.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.158/360.0
2026-01-21T22:48:12.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:12.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:48:12.583 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:12.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:13.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.129/360.0
2026-01-21T22:48:15.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.097/360.0
2026-01-21T22:48:15.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:15.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:15.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:15.603 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:17.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:48:17.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.066/360.0
2026-01-21T22:48:18.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:18.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:48:18.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:18.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:48:19.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.036/360.0
2026-01-21T22:48:21.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.007/360.0
2026-01-21T22:48:21.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:21.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:48:21.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:21.629 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:23.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.975/360.0
2026-01-21T22:48:24.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:24.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:24.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:24.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:25.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.906/360.0
2026-01-21T22:48:27.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:48:27.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:27.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:27.654 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:27.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:27.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.839/360.0
2026-01-21T22:48:29.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.77/360.0
2026-01-21T22:48:30.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:30.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:30.676 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:30.676 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:31.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.701/360.0
2026-01-21T22:48:33.679 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:33.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:33.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:33.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:34.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.633/360.0
2026-01-21T22:48:36.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.565/360.0
2026-01-21T22:48:36.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:36.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:48:36.697 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:36.697 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:48:37.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:48:38.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.497/360.0
2026-01-21T22:48:39.700 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:39.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:48:39.701 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:39.701 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:48:40.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.43/360.0
2026-01-21T22:48:42.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.361/360.0
2026-01-21T22:48:42.704 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:42.720 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:48:42.720 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:42.720 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:48:44.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.294/360.0
2026-01-21T22:48:45.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:45.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-21T22:48:45.724 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:45.724 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:48:46.384 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.226/360.0
2026-01-21T22:48:47.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:48:48.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.195/360.0
2026-01-21T22:48:48.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:48.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T22:48:48.746 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:48.746 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:50.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 92.126/360.0
2026-01-21T22:48:51.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:51.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:51.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:51.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:52.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.094/360.0
2026-01-21T22:48:54.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.065/360.0
2026-01-21T22:48:54.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:54.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:48:54.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:54.773 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:48:56.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.997/360.0
2026-01-21T22:48:57.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:48:57.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:48:57.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:48:57.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:48:57.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:48:58.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.927/360.0
2026-01-21T22:49:00.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:00.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.86/360.0
2026-01-21T22:49:00.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:49:00.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:00.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:02.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.791/360.0
2026-01-21T22:49:03.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:03.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:49:03.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:03.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:49:04.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.722/360.0
2026-01-21T22:49:06.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:06.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:49:06.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:06.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:49:06.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.655/360.0
2026-01-21T22:49:07.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:49:07.436 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:48:49.575373
2026-01-21T22:49:07.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:48:49.575373
2026-01-21T22:49:07.436 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:49:07.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:49:07.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:49:07.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:49:07&start_after=2026-01-20T20:49:07&end_after=2026-01-21T20:49:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:49:07.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:49:07.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:49:07.573 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:49:07.573 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:49:07.573 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:49:07.573 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:49:07.573 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 560.426497
2026-01-21T22:49:07.574 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:49:09.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.587/360.0
2026-01-21T22:49:09.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:49:09.576 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:49:09.576 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:49:09.576375    Obs time: 2026-01-21 20:58:28
2026-01-21T22:49:09.576 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:18.423625
2026-01-21T22:49:09.576 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  558
2026-01-21T22:49:09.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:49:09.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:09.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:49:09.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:09.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:11.127 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.519/360.0
2026-01-21T22:49:12.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:12.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:49:12.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:12.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:13.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.45/360.0
2026-01-21T22:49:15.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 67.382/360.0
2026-01-21T22:49:15.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:15.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:49:15.865 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:15.865 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:16.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:49:17.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.314/360.0
2026-01-21T22:49:18.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:18.884 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:49:18.884 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:18.884 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:19.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.247/360.0
2026-01-21T22:49:21.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.215/360.0
2026-01-21T22:49:21.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:21.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:49:21.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:21.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:49:23.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.146/360.0
2026-01-21T22:49:24.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:24.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:49:24.905 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:24.905 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:49:25.567 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.078/360.0
2026-01-21T22:49:26.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:49:27.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.011/360.0
2026-01-21T22:49:27.908 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:27.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:49:27.909 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:27.909 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:29.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.981/360.0
2026-01-21T22:49:30.912 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:30.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:49:30.933 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:30.933 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:31.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.949/360.0
2026-01-21T22:49:33.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.919/360.0
2026-01-21T22:49:33.936 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:33.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:49:33.937 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:33.937 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:35.796 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.851/360.0
2026-01-21T22:49:36.599 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:49:36.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:36.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:49:36.957 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:36.957 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:37.864 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.782/360.0
2026-01-21T22:49:39.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.713/360.0
2026-01-21T22:49:39.960 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:39.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:49:39.961 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:39.961 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:42.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.647/360.0
2026-01-21T22:49:42.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:42.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:49:42.981 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:42.981 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:44.069 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.577/360.0
2026-01-21T22:49:45.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:45.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:49:45.986 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:45.986 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:49:46.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.509/360.0
2026-01-21T22:49:46.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:49:48.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.442/360.0
2026-01-21T22:49:48.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:49.011 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:49:49.011 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:49.011 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:49:50.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.372/360.0
2026-01-21T22:49:52.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:52.015 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:49:52.015 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:52.015 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:52.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.304/360.0
2026-01-21T22:49:54.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.237/360.0
2026-01-21T22:49:55.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:55.038 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:49:55.038 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:55.038 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:49:56.478 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.168/360.0
2026-01-21T22:49:56.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:49:58.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:49:58.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:49:58.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:49:58.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:49:58.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.101/360.0
2026-01-21T22:50:00.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.031/360.0
2026-01-21T22:50:01.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:01.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:50:01.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:01.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:50:02.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.964/360.0
2026-01-21T22:50:04.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:04.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.00000000000003
2026-01-21T22:50:04.069 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:04.069 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-21T22:50:04.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.895/360.0
2026-01-21T22:50:06.625 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:50:06.642 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:49:49.776066
2026-01-21T22:50:06.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:49:49.776066
2026-01-21T22:50:06.642 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:50:06.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:50:06.643 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:50:06.643 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:50:06&start_after=2026-01-20T20:50:06&end_after=2026-01-21T20:50:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:50:06.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.866/360.0
2026-01-21T22:50:06.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.764 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:50:06.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:50:06.778 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:50:06.778 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:50:06.779 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:50:06.779 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:50:06.779 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 501.220906
2026-01-21T22:50:06.780 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:50:07.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:07.072 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00099999999998
2026-01-21T22:50:07.072 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:07.072 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T22:50:08.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:50:08.800 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:50:08.800 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:50:08.800095    Obs time: 2026-01-21 20:58:28
2026-01-21T22:50:08.800 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:19.199905
2026-01-21T22:50:08.800 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  499
2026-01-21T22:50:08.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:50:08.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.835/360.0
2026-01-21T22:50:10.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:10.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-21T22:50:10.097 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:10.097 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:50:10.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.767/360.0
2026-01-21T22:50:12.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.735/360.0
2026-01-21T22:50:13.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:13.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:50:13.101 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:13.101 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:50:14.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.666/360.0
2026-01-21T22:50:15.807 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:50:16.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:16.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:50:16.120 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:16.120 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:50:17.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.599/360.0
2026-01-21T22:50:19.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.531/360.0
2026-01-21T22:50:19.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:19.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:50:19.121 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:19.121 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:50:21.184 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.462/360.0
2026-01-21T22:50:22.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:22.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:50:22.141 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:22.141 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:50:23.215 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:25.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:25.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:50:25.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:25.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:50:25.283 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:25.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:50:27.313 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:28.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:28.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:50:28.169 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:28.169 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:50:29.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:31.172 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:31.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:50:31.173 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:31.173 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:50:31.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:33.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:34.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:34.196 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:50:34.196 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:34.196 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:50:35.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:35.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:50:37.199 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:37.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:50:37.200 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:37.200 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:50:37.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:39.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:40.203 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:40.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.00000000000003
2026-01-21T22:50:40.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:40.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:50:41.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:43.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:43.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.999
2026-01-21T22:50:43.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:43.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:50:43.633 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:45.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/360.0
2026-01-21T22:50:45.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:50:46.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:50:46.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:50:46.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:50:46.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:50:46.622 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:50:46.622 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:50:46.624 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:50:49.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:50:49.245 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-21T22:50:49.245 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-21T22:50:49.245 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:50:49.245 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:50:49.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:50:49.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:50:49.245 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:50:49.246 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:50:49.246 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:50:49.246 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:50:49.256 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:50:49.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:50:49.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-21T22:50:49.257 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-21T22:50:49.257 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-21T22:50:49.300 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-21T22:50:50.320 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-21T22:50:51.341 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-21T22:50:52.361 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-21T22:50:53.405 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-21T22:50:54.406 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:50:54.458 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T22:50:55.459 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:50:55.460 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.13
2026-01-21T22:50:55.460 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:50:20
2026-01-21T22:50:55.460 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:50:20
2026-01-21T22:50:55.460 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-21T22:50:55.460 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09023614173228345
2026-01-21T22:50:55.463 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-21T22:50:55.463 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:50:55.463 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:50:55.463 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:50:55.510 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-21T22:50:55.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:50:56.511 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:50:56.511 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:50:56.511 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:50:57.546 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:50:59.549 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T22:50:59.549 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:50:59.549 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:50:59.549 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:50:59.549 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:50:59.551 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:50:59.551 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:50:59.553 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:50:59.653 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:50:59.653 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:50:59.655 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028659.655504
2026-01-21T22:51:00.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:51:00.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:51:00.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:00.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:00.567 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:00.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:03.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:03.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:51:03.571 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:03.571 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:05.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-21T22:51:05.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:51:05.871 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:50:49.973960
2026-01-21T22:51:05.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:50:49.973960
2026-01-21T22:51:05.871 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:51:05.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:51:05.871 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:51:05.871 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:51:05&start_after=2026-01-20T20:51:05&end_after=2026-01-21T20:51:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:51:06.089 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.090 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.091 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.091 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.092 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.094 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.095 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.097 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.097 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.100 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.103 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:51:06.104 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:51:06.105 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:51:06.105 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:51:06.105 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:51:06.105 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:51:06.106 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 441.893961
2026-01-21T22:51:06.106 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:51:06.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:06.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:51:06.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:06.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:07.135 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.552/60.0
2026-01-21T22:51:08.108 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:51:08.109 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:51:08.109 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:51:08.109946    Obs time: 2026-01-21 20:58:28
2026-01-21T22:51:08.109 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:19.890054
2026-01-21T22:51:08.110 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  439
2026-01-21T22:51:08.110 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:51:09.165 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.521/60.0
2026-01-21T22:51:09.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:09.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:51:09.579 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:09.580 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:11.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.492/60.0
2026-01-21T22:51:12.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:12.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:51:12.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:12.603 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:13.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.461/60.0
2026-01-21T22:51:15.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:51:15.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.392/60.0
2026-01-21T22:51:15.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:15.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.00000000000003
2026-01-21T22:51:15.607 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:15.607 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:51:17.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.363/60.0
2026-01-21T22:51:18.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:18.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.999
2026-01-21T22:51:18.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:18.629 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T22:51:19.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.332/60.0
2026-01-21T22:51:21.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.301/60.0
2026-01-21T22:51:21.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:21.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-21T22:51:21.649 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:21.649 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:23.416 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.272/60.0
2026-01-21T22:51:24.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:24.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:51:24.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:24.653 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:51:25.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:51:25.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.241/60.0
2026-01-21T22:51:27.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.21/60.0
2026-01-21T22:51:27.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:27.675 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:51:27.675 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:27.675 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:29.507 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.181/60.0
2026-01-21T22:51:30.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:30.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:30.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:30.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:31.537 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.149/60.0
2026-01-21T22:51:33.568 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.118/60.0
2026-01-21T22:51:33.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:33.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:33.703 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:33.703 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:35.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:51:35.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.088/60.0
2026-01-21T22:51:36.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:36.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:36.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:36.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:37.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.059/60.0
2026-01-21T22:51:39.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.029/60.0
2026-01-21T22:51:39.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:39.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:39.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:39.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:41.690 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.997/60.0
2026-01-21T22:51:42.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:42.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:42.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:42.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:43.720 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.966/60.0
2026-01-21T22:51:45.143 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:51:45.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:45.751 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.936/60.0
2026-01-21T22:51:45.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:51:45.756 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:45.756 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:51:47.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.905/60.0
2026-01-21T22:51:48.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:48.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:51:48.779 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:48.779 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:51:49.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.877/60.0
2026-01-21T22:51:51.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:51.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:51:51.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:51.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:51.842 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.845/60.0
2026-01-21T22:51:53.910 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.814/60.0
2026-01-21T22:51:54.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:54.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:51:54.806 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:54.806 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:55.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:51:55.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.746/60.0
2026-01-21T22:51:57.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:51:57.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:51:57.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:51:57.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:51:57.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.716/60.0
2026-01-21T22:52:00.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:00.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:00.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:52:00.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:00.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:52:02.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:03.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:03.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:52:03.849 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:03.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:04.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:05.161 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:52:05.181 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:51:50.172073
2026-01-21T22:52:05.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:51:50.172073
2026-01-21T22:52:05.181 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:52:05.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:52:05.181 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:52:05.181 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:52:05&start_after=2026-01-20T20:52:05&end_after=2026-01-21T20:52:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:52:05.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.404 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.406 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.409 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.410 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.411 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.411 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.413 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.414 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:52:05.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:52:05.419 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:52:05.419 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:52:05.419 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:52:05.419 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:52:05.419 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 382.580078
2026-01-21T22:52:05.420 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:52:06.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:06.852 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:06.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:52:06.873 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:06.873 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:52:07.421 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:52:07.421 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:52:07.422 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:52:07.422016    Obs time: 2026-01-21 20:58:28
2026-01-21T22:52:07.422 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:20.577984
2026-01-21T22:52:07.422 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  380
2026-01-21T22:52:07.422 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:52:08.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:09.876 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:09.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:52:09.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:09.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:52:10.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:12.184 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:12.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:12.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:52:12.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:12.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:52:14.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:14.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:52:15.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:15.916 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:52:15.916 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:15.916 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:16.244 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:18.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:18.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:18.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:52:18.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:18.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:20.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:21.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:21.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-21T22:52:21.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:21.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:52:22.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 2/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:52:23.014 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:52:23.014 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:52:23.037 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:52:24.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:52:24.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:52:24.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-21T22:52:24.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-21T22:52:24.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:52:24.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:52:24.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:52:24.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:52:24.941 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:52:24.941 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:52:24.941 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:52:24.941 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:52:24.952 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:52:24.953 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:52:24.953 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-21T22:52:24.953 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-21T22:52:24.953 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-21T22:52:25.000 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-21T22:52:26.020 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-21T22:52:27.041 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-21T22:52:28.062 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-21T22:52:29.132 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-21T22:52:30.133 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:52:30.185 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T22:52:31.186 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:52:31.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.07
2026-01-21T22:52:31.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:51:57
2026-01-21T22:52:31.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:51:57
2026-01-21T22:52:31.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-21T22:52:31.187 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09035153543307085
2026-01-21T22:52:31.190 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-21T22:52:31.190 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:52:31.190 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:52:31.190 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:52:31.238 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-21T22:52:32.239 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:52:32.239 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:52:32.239 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:52:33.277 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:52:34.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:52:35.280 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T22:52:35.280 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:52:35.281 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:52:35.281 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:52:35.281 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:52:35.283 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:52:35.283 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:52:35.286 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:52:35.385 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:52:35.385 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:52:35.387 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028755.3870974
2026-01-21T22:52:35.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:52:35.782 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:52:36.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:36.299 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:52:36.299 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:36.299 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:52:39.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:39.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:52:39.303 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:39.303 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:40.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.553/60.0
2026-01-21T22:52:42.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:42.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:52:42.325 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:42.325 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:42.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.513/60.0
2026-01-21T22:52:44.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:52:44.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.483/60.0
2026-01-21T22:52:45.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:45.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:52:45.329 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:45.329 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:52:46.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.452/60.0
2026-01-21T22:52:48.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:48.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:52:48.349 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:48.349 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:52:48.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.422/60.0
2026-01-21T22:52:51.025 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.392/60.0
2026-01-21T22:52:51.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:51.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:52:51.353 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:51.353 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:53.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.363/60.0
2026-01-21T22:52:54.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:54.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:52:54.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:54.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:52:54.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:52:55.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.331/60.0
2026-01-21T22:52:57.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.3/60.0
2026-01-21T22:52:57.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:52:57.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:52:57.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:52:57.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:52:59.147 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.27/60.0
2026-01-21T22:53:00.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:00.400 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:53:00.400 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:00.400 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:53:01.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.24/60.0
2026-01-21T22:53:03.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.209/60.0
2026-01-21T22:53:03.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:03.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:53:03.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:03.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:53:04.474 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:53:04.475 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:52:50.372675
2026-01-21T22:53:04.475 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:52:50.372675
2026-01-21T22:53:04.475 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:53:04.475 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:53:04.476 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:53:04.476 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:53:04&start_after=2026-01-20T20:53:04&end_after=2026-01-21T20:53:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:53:04.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.640 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:53:04.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:53:04.652 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:53:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:53:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:53:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:53:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 323.347444
2026-01-21T22:53:04.653 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:53:05.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.179/60.0
2026-01-21T22:53:06.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:06.423 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:53:06.423 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:06.423 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:06.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:53:06.655 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:53:06.655 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:53:06.655074    Obs time: 2026-01-21 20:58:28
2026-01-21T22:53:06.655 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:21.344926
2026-01-21T22:53:06.655 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  321
2026-01-21T22:53:06.655 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:53:07.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.148/60.0
2026-01-21T22:53:09.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.118/60.0
2026-01-21T22:53:09.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:09.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:09.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:09.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:11.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.088/60.0
2026-01-21T22:53:12.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:12.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:53:12.445 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:12.445 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:53:13.360 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.059/60.0
2026-01-21T22:53:13.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:53:15.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.027/60.0
2026-01-21T22:53:15.448 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:15.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:53:15.449 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:15.449 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:53:17.421 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.996/60.0
2026-01-21T22:53:18.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:18.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:53:18.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:18.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:19.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.967/60.0
2026-01-21T22:53:21.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:21.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-21T22:53:21.472 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:21.472 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T22:53:21.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.936/60.0
2026-01-21T22:53:23.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.905/60.0
2026-01-21T22:53:23.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:53:24.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:24.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-21T22:53:24.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:24.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:25.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.876/60.0
2026-01-21T22:53:27.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:27.495 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:27.495 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:27.495 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:27.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.844/60.0
2026-01-21T22:53:29.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.815/60.0
2026-01-21T22:53:30.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:30.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:30.499 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:30.499 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:31.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.784/60.0
2026-01-21T22:53:33.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:33.522 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:33.523 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:33.523 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:33.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.753/60.0
2026-01-21T22:53:33.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:53:35.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:36.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:36.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:53:36.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:36.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:53:37.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:39.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:39.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:53:39.545 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:39.545 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:53:39.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:41.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:42.548 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:42.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:53:42.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:42.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:53:43.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:53:43.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:45.552 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:45.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:53:45.577 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:45.577 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:45.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:47.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:48.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:48.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:48.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:48.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:49.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:51.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:51.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:51.604 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:51.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:51.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:53.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:53:53.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:54.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:54.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:53:54.606 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:54.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:53:55.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:53:57.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:53:57.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:53:57.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:53:57.629 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:53:57.796 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:53:57.843 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:53:57.845 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:54:00.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:54:00.632 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-21T22:54:00.632 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-21T22:54:00.632 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:54:00.632 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:54:00.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:54:00.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:54:00.632 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:54:00.632 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:54:00.632 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:54:00.632 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:54:00.642 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:54:00.643 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:54:00.643 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-21T22:54:00.643 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-21T22:54:00.643 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-21T22:54:00.689 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-21T22:54:01.710 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-21T22:54:02.730 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-21T22:54:03.700 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:54:03.722 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:53:50.573958
2026-01-21T22:54:03.722 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:53:50.573958
2026-01-21T22:54:03.722 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:54:03.722 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:54:03.723 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:54:03.723 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:54:03&start_after=2026-01-20T20:54:03&end_after=2026-01-21T20:54:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:54:03.804 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-21T22:54:03.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.853 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.856 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.857 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.858 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.862 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.864 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:54:03.864 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:54:03.866 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:54:03.866 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:54:03.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:54:03.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:54:03.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 264.133314
2026-01-21T22:54:03.867 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:54:04.805 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:54:04.857 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T22:54:05.858 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:54:05.859 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.02
2026-01-21T22:54:05.859 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:53:01
2026-01-21T22:54:05.859 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:53:01
2026-01-21T22:54:05.859 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-21T22:54:05.859 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0926643307086614
2026-01-21T22:54:05.862 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-21T22:54:05.863 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:54:05.863 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:54:05.863 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:54:05.869 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:54:05.889 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:54:05.889 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:54:05.889056    Obs time: 2026-01-21 20:58:28
2026-01-21T22:54:05.889 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:22.110944
2026-01-21T22:54:05.889 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  262
2026-01-21T22:54:05.889 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:54:05.909 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-21T22:54:06.911 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:54:06.911 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:54:06.911 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:54:07.956 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:54:09.978 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T22:54:09.978 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:54:09.978 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:54:09.979 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:54:09.979 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:54:09.981 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:54:09.981 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:54:09.982 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:54:10.101 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:54:10.101 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:54:10.103 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028850.103047
2026-01-21T22:54:10.480 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:54:10.480 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:54:10.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:10.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:54:10.997 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:10.997 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:54:12.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:54:14.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:14.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:54:14.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:14.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:54:15.552 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-21T22:54:17.020 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:17.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:54:17.021 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:17.021 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:54:17.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-21T22:54:19.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.52/60.0
2026-01-21T22:54:20.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:20.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:54:20.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:20.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:54:21.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.492/60.0
2026-01-21T22:54:22.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:54:23.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:23.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:54:23.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:23.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:54:23.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.459/60.0
2026-01-21T22:54:25.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.429/60.0
2026-01-21T22:54:26.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:26.063 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:54:26.063 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:26.063 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:54:27.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.399/60.0
2026-01-21T22:54:29.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:29.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:54:29.066 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:29.066 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:54:29.765 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.368/60.0
2026-01-21T22:54:31.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.338/60.0
2026-01-21T22:54:32.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:32.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T22:54:32.086 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:32.086 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:54:32.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:54:33.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.308/60.0
2026-01-21T22:54:35.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:35.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.999
2026-01-21T22:54:35.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:35.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:54:35.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.277/60.0
2026-01-21T22:54:37.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.247/60.0
2026-01-21T22:54:38.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:38.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:54:38.108 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:38.108 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:54:39.917 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.218/60.0
2026-01-21T22:54:41.111 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:41.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:54:41.112 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:41.112 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:54:41.947 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.186/60.0
2026-01-21T22:54:42.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:54:43.978 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.156/60.0
2026-01-21T22:54:44.115 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:44.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:54:44.133 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:44.133 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:54:46.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.126/60.0
2026-01-21T22:54:47.136 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:47.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:54:47.157 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:47.157 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:54:48.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.095/60.0
2026-01-21T22:54:50.069 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.064/60.0
2026-01-21T22:54:50.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:50.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:54:50.159 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:50.159 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:54:52.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.034/60.0
2026-01-21T22:54:52.929 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:54:53.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:53.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:54:53.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:53.181 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:54:54.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.003/60.0
2026-01-21T22:54:56.160 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.973/60.0
2026-01-21T22:54:56.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:56.183 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:54:56.183 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:56.183 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:54:58.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.944/60.0
2026-01-21T22:54:59.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:54:59.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:54:59.205 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:54:59.205 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:55:00.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.912/60.0
2026-01-21T22:55:02.208 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:02.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:55:02.228 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:02.228 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:02.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.882/60.0
2026-01-21T22:55:02.937 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:55:02.938 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:54:50.775894
2026-01-21T22:55:02.938 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:54:50.775894
2026-01-21T22:55:02.938 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:55:02.938 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:55:02.938 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:55:02.938 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:55:02&start_after=2026-01-20T20:55:02&end_after=2026-01-21T20:55:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:55:03.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.065 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:55:03.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:55:03.070 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:55:03.070 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:55:03.070 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:55:03.070 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:55:03.070 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 204.929362
2026-01-21T22:55:03.071 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:55:04.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.851/60.0
2026-01-21T22:55:05.073 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:55:05.090 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:55:05.090 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:55:05.090947    Obs time: 2026-01-21 20:58:28
2026-01-21T22:55:05.090 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:22.909053
2026-01-21T22:55:05.091 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  202
2026-01-21T22:55:05.091 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:55:05.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:05.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:55:05.232 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:05.232 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:06.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.821/60.0
2026-01-21T22:55:08.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:08.236 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:55:08.236 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:08.236 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:55:08.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.791/60.0
2026-01-21T22:55:10.373 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:11.239 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:11.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:55:11.262 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:11.262 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:55:12.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:55:12.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:14.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:14.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:55:14.266 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:14.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:55:14.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:16.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:17.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:17.284 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:55:17.284 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:17.284 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:55:18.570 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:20.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:20.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:55:20.305 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:20.305 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:20.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:22.108 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:55:22.631 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:23.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:23.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:55:23.329 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:23.329 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:24.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:26.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:26.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:55:26.331 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:26.331 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:55:26.692 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:28.722 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:29.334 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:29.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:55:29.349 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:29.349 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:30.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:55:32.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:55:32.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:32.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:55:32.353 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:32.353 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:32.508 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:55:32.508 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:55:32.510 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:55:35.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:55:35.357 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-21T22:55:35.357 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-21T22:55:35.357 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:55:35.357 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:55:35.357 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:55:35.357 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:55:35.357 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:55:35.357 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:55:35.357 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:55:35.357 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:55:35.368 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:55:35.369 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:55:35.369 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-21T22:55:35.369 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-21T22:55:35.369 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-21T22:55:35.437 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-21T22:55:36.457 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-21T22:55:37.478 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-21T22:55:38.535 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-21T22:55:39.536 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:55:39.588 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T22:55:40.589 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:55:40.590 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.92
2026-01-21T22:55:40.591 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:55:10
2026-01-21T22:55:40.591 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:55:10
2026-01-21T22:55:40.591 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-21T22:55:40.591 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09286141732283462
2026-01-21T22:55:40.594 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-21T22:55:40.594 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-21T22:55:40.594 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-21T22:55:40.594 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-21T22:55:40.641 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-21T22:55:41.642 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-21T22:55:41.642 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:55:41.642 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:55:42.128 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:55:42.672 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:55:44.675 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T22:55:44.675 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T22:55:44.675 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T22:55:44.675 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T22:55:44.675 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T22:55:44.677 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T22:55:44.677 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:55:44.678 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:55:44.779 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T22:55:44.779 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T22:55:44.781 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769028944.7813826
2026-01-21T22:55:45.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T22:55:45.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T22:55:45.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:45.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:55:45.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:45.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:48.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:48.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:55:48.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:48.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:55:50.230 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-21T22:55:51.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:51.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:55:51.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:51.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:52.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:55:52.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-21T22:55:54.291 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.522/60.0
2026-01-21T22:55:54.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:54.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:55:54.729 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:54.729 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:55:56.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.49/60.0
2026-01-21T22:55:57.732 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:55:57.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:55:57.752 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:55:57.752 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:55:58.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.461/60.0
2026-01-21T22:56:00.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.429/60.0
2026-01-21T22:56:00.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:00.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:56:00.754 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:00.754 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:02.148 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:56:02.169 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:55:50.978733
2026-01-21T22:56:02.169 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:55:50.978733
2026-01-21T22:56:02.169 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:56:02.169 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:56:02.169 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:56:02.169 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:56:02&start_after=2026-01-20T20:56:02&end_after=2026-01-21T20:56:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:56:02.309 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.311 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.311 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.312 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.314 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.322 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:56:02.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:56:02.325 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:56:02.325 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:56:02.325 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:56:02.325 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:56:02.325 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 145.674132
2026-01-21T22:56:02.326 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:56:02.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.399/60.0
2026-01-21T22:56:03.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:03.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:56:03.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:03.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:04.328 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:56:04.329 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:56:04.329 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:56:04.329676    Obs time: 2026-01-21 20:58:28
2026-01-21T22:56:04.329 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:23.670324
2026-01-21T22:56:04.329 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  143
2026-01-21T22:56:04.329 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:56:04.444 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.369/60.0
2026-01-21T22:56:06.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.338/60.0
2026-01-21T22:56:06.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:06.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:56:06.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:06.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:08.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.308/60.0
2026-01-21T22:56:09.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:09.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:56:09.801 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:09.801 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:10.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.276/60.0
2026-01-21T22:56:11.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:56:12.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.247/60.0
2026-01-21T22:56:12.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:12.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:56:12.824 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:12.824 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:14.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.216/60.0
2026-01-21T22:56:15.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:15.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:56:15.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:15.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:16.627 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.186/60.0
2026-01-21T22:56:18.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.154/60.0
2026-01-21T22:56:18.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:18.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:56:18.845 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:18.845 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:20.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.126/60.0
2026-01-21T22:56:21.347 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:56:21.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:21.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:56:21.849 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:21.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:22.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.094/60.0
2026-01-21T22:56:24.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.063/60.0
2026-01-21T22:56:24.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:24.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:56:24.873 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:24.873 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:26.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.034/60.0
2026-01-21T22:56:27.876 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:27.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:56:27.877 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:27.877 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:28.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.002/60.0
2026-01-21T22:56:30.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.972/60.0
2026-01-21T22:56:30.880 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:30.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T22:56:30.902 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:30.902 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:31.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:56:32.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.941/60.0
2026-01-21T22:56:33.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:33.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T22:56:33.906 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:33.906 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:56:34.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.911/60.0
2026-01-21T22:56:36.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:36.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T22:56:36.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:36.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:56:36.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.882/60.0
2026-01-21T22:56:38.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.85/60.0
2026-01-21T22:56:39.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:39.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T22:56:39.930 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:39.930 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:40.992 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.819/60.0
2026-01-21T22:56:41.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:56:42.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:42.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:56:42.952 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:42.952 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:43.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.789/60.0
2026-01-21T22:56:45.053 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:45.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:45.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T22:56:45.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:45.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:47.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:48.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:48.974 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T22:56:48.974 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:48.974 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T22:56:49.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:51.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:51.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:56:51.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:51.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T22:56:51.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:51.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:53.175 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:54.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:54.999 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T22:56:54.999 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:54.999 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:56:55.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:57.236 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:56:58.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:56:58.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:56:58.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:56:58.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:56:59.267 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:57:01.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:57:01.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T22:57:01.022 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:57:01.022 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T22:57:01.297 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:57:01.383 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:57:01.384 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:56:51.179938
2026-01-21T22:57:01.384 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:56:51.179938
2026-01-21T22:57:01.384 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:57:01.384 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:57:01.384 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:57:01.384 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:57:01&start_after=2026-01-20T20:57:01&end_after=2026-01-21T20:57:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:57:01.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.505 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.508 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.511 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.512 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.513 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.515 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.516 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:57:01.517 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:57:01.518 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:57:01.519 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:57:01.519 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:57:01.519 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:57:01.519 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 86.480868
2026-01-21T22:57:01.522 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:57:03.328 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:57:03.524 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:57:03.544 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:57:03.544 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:57:03.544550    Obs time: 2026-01-21 20:58:28
2026-01-21T22:57:03.544 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:24.455450
2026-01-21T22:57:03.544 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  84
2026-01-21T22:57:03.544 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:57:04.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:57:04.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T22:57:04.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:57:04.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T22:57:05.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_phot_17231598_13346_13392.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-21T22:57:07.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T22:57:07.044 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T22:57:07.044 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T22:57:07.044 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T22:57:07.233 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T22:57:07.233 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T22:57:07.235 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T22:57:10.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T22:57:10.047 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-21T22:57:10.047 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:57:10.048 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:57:10.227 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:57:10.227 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script SN2025advo_phot_17231598_13346_13392.json was run successfully
2026-01-21T22:57:10.227 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510351 COMPLETED 13392 reason
2026-01-21T22:57:10.227 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510351 COMPLETED 13392 reason
2026-01-21T22:57:10.227 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:57:10.227 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:57:10.227 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:57:10.227 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:57:10.227 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:57:10.227 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:57:10.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:57:13.230 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:57:13.230 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:57:15.232 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:57:15.232 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:57:15.232 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T22:57:15.232 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T22:57:15.233 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T22:57:15.234 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T22:57:15.234 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T20:58:28Z
2026-01-21T22:57:15.234 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T22:57:15.234 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T22:57:15.234 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T22:57:15.234 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T22:57:15.234 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T22:57:15.234 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:57:15.234 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:57:15.734 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:57:15.735 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T22:57:15.735 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:57:15.735 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T22:57:15.735 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:57:15.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:57:15.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:57:15.735 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:57:15.735 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T22:57:15.737 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 08:19:02.61156   Targ dec = +04:32:00.9312
2026-01-21T22:57:15.737 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T22:57:15.737 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T22:57:15.737 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T22:57:15.744 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T22:57:15.744 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T22:57:15.744 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T22:57:15.744 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T22:57:16.788 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T22:57:18.790 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T22:57:18.791 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T22:57:18.791 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T22:57:19.238 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T22:57:19.238 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T22:57:19.238 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T22:57:19.238 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T22:57:19.238 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T22:57:19.238 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510351
2026-01-21T22:57:19.238 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T22:57:19.238 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T22:57:19.239 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T20:41:15', 'end': '2026-01-21T20:57:19', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '964.0', 'events': {}}} with config status ID 17510351
2026-01-21T22:57:19.397 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:57:19.397 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:40:02Z', 'guide_off', 'config_id 13392', 'config_status_id 17510351', 'update_OCS 17510351 ATTEMPTED', 'run_script setup_SN2025advo_phot_17231598_13346_13392.json', 'run_script SN2025advo_phot_17231598_13346_13392.json', 'update_OCS 17510351 COMPLETED 13392 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T20:58:28Z', 'run_script arc_flat_lamp_off.json'] at time 22:57:19
2026-01-21T22:57:20.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:57:30.572 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:57:40.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:57:50.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:58:00.602 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:58:00.619 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:57:51.379425
2026-01-21T22:58:00.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:57:51.379425
2026-01-21T22:58:00.619 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:58:00.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:58:00.620 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:58:00.620 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:58:00&start_after=2026-01-20T20:58:00&end_after=2026-01-21T20:58:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:58:00.737 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.738 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.739 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.739 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.740 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.741 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.743 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.744 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.745 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.746 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.746 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.748 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.749 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.751 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:00.751 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:00.753 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:58:00.753 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:58:00.753 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:58:00.753 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:58:00.753 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 27.246503
2026-01-21T22:58:00.754 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:58:02.754 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:58:02.771 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:58:02.771 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:58:02.771717    Obs time: 2026-01-21 20:58:28
2026-01-21T22:58:02.771 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:25.228283
2026-01-21T22:58:02.771 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  25
2026-01-21T22:58:02.771 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T22:58:09.777 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:58:19.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:58:29.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:58:39.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:58:49.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:58:59.826 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:58:59.826 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:58:51.586239
2026-01-21T22:58:59.827 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:58:51.586239
2026-01-21T22:58:59.827 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:58:59.827 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:58:59.827 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:58:59.827 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:58:59&start_after=2026-01-20T20:58:59&end_after=2026-01-21T20:58:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:58:59.964 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.966 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.967 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.968 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.971 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.972 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.975 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:58:59.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:58:59.980 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:58:59.980 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T22:58:59.980 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:58:59.980 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T20:58:28Z
2026-01-21T22:58:59.980 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -31.98021
2026-01-21T22:58:59.980 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T22:59:01.983 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T22:59:01.983 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T22:59:01.984 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:59:01.984007    Obs time: 2026-01-21 20:58:28
2026-01-21T22:59:01.984 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:26.015993
2026-01-21T22:59:01.984 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86366
2026-01-21T22:59:01.984 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:58:28Z', 'guide_off', 'config_id 13432', 'config_status_id 17510679', 'update_OCS 17510679 ATTEMPTED', 'run_script setup_WD40_phot_17231926_13386_13432.json', 'run_script WD40_phot_17231926_13386_13432.json', 'update_OCS 17510679 COMPLETED 13432 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:11:42Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T22:59:01.984 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T22:59:01.984 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T22:59:01.984 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T22:59:01.984 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T22:59:01.984 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T22:59:01.984 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:59:01.985 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:59:01.985 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:59:01.985 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:59:01.985 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:59:04.988 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:59:04.988 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:59:06.990 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:59:06.990 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:59:06.990 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T20:58:28Z
2026-01-21T22:59:06.990 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T20:58:28Z
2026-01-21T22:59:06.990 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T22:59:06.990 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T22:59:06.991 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T22:59:06.991 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T22:59:06.991 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T22:59:06.991 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T22:59:08.991 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T22:59:09.994 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T22:59:09.994 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T22:59:11.996 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T22:59:11.996 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13432
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13432
2026-01-21T22:59:11.996 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17510679
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17510679
2026-01-21T22:59:11.996 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510679 ATTEMPTED
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510679 ATTEMPTED
2026-01-21T22:59:11.996 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_WD40_phot_17231926_13386_13432.json
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_WD40_phot_17231926_13386_13432.json
2026-01-21T22:59:11.996 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_WD40_phot_17231926_13386_13432.json
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_WD40_phot_17231926_13386_13432.json
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 7.25867, 'targ_dec': -19.66492193523564, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '07:15:31.22', 'targ_dec': '-19:39:53.72', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_WD40_phot_17231926_13386_13432.json'}
2026-01-21T22:59:11.996 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T22:59:11.996 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T22:59:11.997 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T22:59:11.997 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510679
2026-01-21T22:59:11.997 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T22:59:11.997 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T22:59:11.997 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17510679
2026-01-21T22:59:12.137 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T22:59:12.497 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T22:59:12.497 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_WD40_phot_17231926_13386_13432.json 1 times
2026-01-21T22:59:12.497 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T22:59:12.499 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T22:59:12.499 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T22:59:12.499 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T22:59:15.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-21T22:59:16.552 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:17.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:18.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:19.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T22:59:19.615 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:20.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:21.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:22.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:23.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:24.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T22:59:25.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T22:59:25.738 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  7.25913917059393 is close enough to target ra = 7.25867
2026-01-21T22:59:25.738 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -19.6640773778873 is close enough to target dec = -19.66492193523564
2026-01-21T22:59:25.738 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T22:59:25.738 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T22:59:25.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T22:59:25.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T22:59:25.738 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T22:59:25.739 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T22:59:25.739 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T22:59:25.750 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:59:25.750 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:59:25.918 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T22:59:26.938 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T22:59:27.958 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T22:59:28.978 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T22:59:29.012 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T22:59:29.998 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T22:59:31.019 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T22:59:32.040 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T22:59:33.066 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 8
2026-01-21T22:59:34.085 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 9
2026-01-21T22:59:35.105 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 10
2026-01-21T22:59:35.105 [WARNING] [script_worker] [client.py] [set_filter()] Filter position 0 on slide 0 not achieved after 10 tries
2026-01-21T22:59:35.105 [INFO] [script_worker] [client.py] [set_filter()] Will move to temporary position 5
2026-01-21T22:59:35.138 [INFO] [script_worker] [client.py] [set_filter()] Number of retries = 1
2026-01-21T22:59:39.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T22:59:40.162 [INFO] [script_worker] [client.py] [set_filter()] Temporary position 5 not achieved after 5 seconds, but no matter, we'll try go back to the originally requested position
2026-01-21T22:59:40.341 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-21T22:59:41.361 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-21T22:59:42.381 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-21T22:59:43.401 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-21T22:59:44.421 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-21T22:59:45.491 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-21T22:59:46.511 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-21T22:59:47.532 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 8
2026-01-21T22:59:48.553 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 9
2026-01-21T22:59:49.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T22:59:49.631 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:59:49.631 [INFO] [script_worker] [client.py] [set_filter()] Success after 1 retry/retries
2026-01-21T22:59:50.632 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:59:50.633 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:59:50.697 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:59:51.698 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:59:51.750 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:59:52.752 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:59:52.753 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.69
2026-01-21T22:59:52.753 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:59:27
2026-01-21T22:59:52.753 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:59:27
2026-01-21T22:59:52.753 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:59:52.753 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09255015748031493
2026-01-21T22:59:52.756 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T22:59:52.757 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T22:59:52.757 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T22:59:52.894 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T22:59:52.894 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:59:52.954 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:59:53.955 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T22:59:53.955 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T22:59:54.119 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T22:59:55.121 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T22:59:55.172 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T22:59:56.174 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T22:59:56.174 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.69
2026-01-21T22:59:56.174 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 22:59:27
2026-01-21T22:59:56.174 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T22:59:27
2026-01-21T22:59:56.175 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T22:59:56.175 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09255015748031493
2026-01-21T22:59:59.042 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T22:59:59.043 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T22:59:51.792254
2026-01-21T22:59:59.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T22:59:51.792254
2026-01-21T22:59:59.043 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T22:59:59.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T22:59:59.043 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T22:59:59.043 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T20:59:59&start_after=2026-01-20T20:59:59&end_after=2026-01-21T20:59:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T22:59:59.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.154 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.155 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.155 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.157 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.204 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.209 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T22:59:59.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:15:00Z
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 900.78661
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 20:59:59.213421    Obs time: 2026-01-21 21:15:00
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:00.786579
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  900
2026-01-21T22:59:59.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:00:01.197 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T23:00:01.197 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:00:01.197 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:00:01.197 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:00:01.197 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:00:01.197 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:00:01.199 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:00:01.199 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:01.201 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:01.311 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:00:01.311 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:00:01.313 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029201.313462
2026-01-21T23:00:06.707 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T23:00:07.575 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:00:07.575 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:07.577 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:08.222 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:00:10.711 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T23:00:10.711 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T23:00:18.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:00:20.762 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T23:00:20.762 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T23:00:20.762 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 07:15:31.22 = 391968.30000000005 arcseconds
2026-01-21T23:00:20.762 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -19:39:53.72 = -70793.72 arcseconds
2026-01-21T23:00:20.762 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T23:00:20.782 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T23:00:20.782 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.726867
2026-01-21T23:00:20.782 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T23:00:20.782 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (07:15:35.713, -19:39:54.457).
2026-01-21T23:00:20.782 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  07 15 35.713  -19 39 54.457 .
2026-01-21T23:00:20.782 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 07 15 35.713  -19 39 54.457 .
2026-01-21T23:00:20.782 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 392035.695
2026-01-21T23:00:20.782 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -70794.457
2026-01-21T23:00:20.993 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T23:00:25.999 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T23:00:25.999 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:00:25.999 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:00:25.999 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:00:25.999 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:00:25.999 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:00:26.001 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:00:26.001 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:26.003 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:26.128 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:00:26.128 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:00:26.130 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029226.1302993
2026-01-21T23:00:27.501 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:00:28.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:00:30.389 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:00:30.389 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:30.412 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:30.507 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T23:00:34.510 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T23:00:34.531 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T23:00:34.531 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T23:00:34.531 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 07:15:31.22 = 391968.30000000005 arcseconds
2026-01-21T23:00:34.531 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -19:39:53.72 = -70793.72 arcseconds
2026-01-21T23:00:34.531 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-21T23:00:34.552 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T23:00:34.552 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.748869
2026-01-21T23:00:34.552 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T23:00:34.552 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (07:15:31.267, -19:39:54.250).
2026-01-21T23:00:34.552 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  07 15 31.267  -19 39 54.250 .
2026-01-21T23:00:34.552 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 07 15 31.267  -19 39 54.250 .
2026-01-21T23:00:34.552 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 391969.005
2026-01-21T23:00:34.552 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -70794.25
2026-01-21T23:00:34.762 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T23:00:38.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:00:39.768 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T23:00:39.768 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:00:39.768 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:00:39.768 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:00:39.769 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:00:39.769 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:00:39.771 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:00:39.771 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:39.772 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:39.928 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:00:39.928 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:00:39.930 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029239.9301894
2026-01-21T23:00:41.270 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:00:44.190 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:00:44.190 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:44.208 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:44.277 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T23:00:48.259 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:00:50.301 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:00:50.301 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:00:50.301 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:00:50.302 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:00:50.302 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:00:50.304 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:00:50.304 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:50.305 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:50.419 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:00:50.419 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:00:50.422 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029250.4221869
2026-01-21T23:00:51.803 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:00:54.681 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:00:54.681 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:00:54.698 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:00:54.810 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T23:00:58.290 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:00:58.336 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:00:51.991939
2026-01-21T23:00:58.346 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:00:51.991939
2026-01-21T23:00:58.356 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:00:58.366 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:00:58.402 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:00:58.413 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:00:58&start_after=2026-01-20T21:00:58&end_after=2026-01-21T21:00:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:00:58.616 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:58.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:58.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:58.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:58.737 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:58.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:58.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:58.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:58.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:58.885 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:58.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:58.969 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:59.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:00:59.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:00:59.085 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:00:59.095 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:00:59.105 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:00:59.116 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:15:00Z
2026-01-21T23:00:59.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 840.873726
2026-01-21T23:00:59.136 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:00:59.136518    Obs time: 2026-01-21 21:15:00
2026-01-21T23:00:59.146 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:00.863482
2026-01-21T23:00:59.157 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  840
2026-01-21T23:00:59.167 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:01:02.572 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2118  10345  13.7 to host 127.0.0.1 on port 12360
2026-01-21T23:01:02.572 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:01:02.572 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:01:05.575 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2118  10345  13.7
2026-01-21T23:01:05.575 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2118  10345  13.7
2026-01-21T23:01:07.577 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:01:08.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:01:18.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:01:28.222 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:01:38.232 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:01:46.616 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T23:01:46.616 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:01:46.616 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:01:48.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:01:49.619 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T23:01:49.619 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T23:01:51.621 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:01:51.621 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:01:51.621 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:01:51.621 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:01:51.621 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:01:51.622 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:01:51.622 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:01:51.622 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:01:52.646 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:01:54.648 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T23:01:54.648 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:01:54.648 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:01:55.343 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:01:55.343 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_WD40_phot_17231926_13386_13432.json was run successfully
2026-01-21T23:01:55.343 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script WD40_phot_17231926_13386_13432.json
2026-01-21T23:01:55.343 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script WD40_phot_17231926_13386_13432.json
2026-01-21T23:01:55.343 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name WD40_phot_17231926_13386_13432.json
2026-01-21T23:01:55.343 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script WD40_phot_17231926_13386_13432.json
2026-01-21T23:01:55.343 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'WD40', 'observer': 'nic', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '07:15:31.22', 'targ_dec': '-19:39:53.72', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 5}}], 'script_name': 'WD40_phot_17231926_13386_13432.json'}
2026-01-21T23:01:55.343 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:01:55.344 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:01:55.844 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:01:55.844 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script WD40_phot_17231926_13386_13432.json 1 times
2026-01-21T23:01:55.844 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T23:01:55.844 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:01:55.844 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:01:55.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:01:55.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:01:55.844 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:01:55.844 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:01:55.844 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:01:55.845 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:01:55.854 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:01:55.855 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:01:55.855 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T23:01:55.855 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:01:55.855 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:01:55.910 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:01:56.911 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T23:01:56.911 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 3
2026-01-21T23:01:56.911 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:3
2026-01-21T23:01:56.911 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 3
2026-01-21T23:01:56.963 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:01:57.964 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:01:58.016 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:01:58.252 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:01:58.271 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:01:52.192390
2026-01-21T23:01:58.271 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:01:52.192390
2026-01-21T23:01:58.271 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:01:58.271 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:01:58.271 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:01:58.271 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:01:58&start_after=2026-01-20T21:01:58&end_after=2026-01-21T21:01:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:01:58.410 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.411 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.412 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.412 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.414 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.415 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.417 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.418 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.421 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.423 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.423 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:01:58.425 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:01:58.426 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:01:58.426 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:01:58.426 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:01:58.426 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:01:58.426 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 583.573746
2026-01-21T23:01:58.427 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:01:59.017 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:01:59.018 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.07
2026-01-21T23:01:59.018 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:01:35
2026-01-21T23:01:59.018 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:01:35
2026-01-21T23:01:59.018 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -25.6, 2698
2026-01-21T23:01:59.018 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08599244094488187
2026-01-21T23:01:59.021 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 3
2026-01-21T23:01:59.021 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:01:59.021 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:02:00.054 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:02:00.429 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:02:00.446 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:02:00.446 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:02:00.446931    Obs time: 2026-01-21 21:11:42
2026-01-21T23:02:00.446 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:41.553069
2026-01-21T23:02:00.446 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  581
2026-01-21T23:02:00.447 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:02:02.073 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='07:15:31.22', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-19:39:53.72', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='nic', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='WD40', comment='The object name')]
2026-01-21T23:02:02.073 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:02:02.074 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:02:02.074 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:02:02.074 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:02:02.076 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 5 exposures
2026-01-21T23:02:02.076 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:02:02.077 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:02:02.195 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 5 exposures
2026-01-21T23:02:02.195 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 5
2026-01-21T23:02:02.196 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029322.1969259
2026-01-21T23:02:02.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T23:02:02.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T23:02:03.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:03.096 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:02:03.096 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:03.096 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:02:06.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:06.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:02:06.113 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:06.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:07.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:02:07.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 54.591/60.0
2026-01-21T23:02:09.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:09.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:02:09.133 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:09.133 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:02:09.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 52.551/60.0
2026-01-21T23:02:11.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 50.522/60.0
2026-01-21T23:02:12.136 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:12.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T23:02:12.158 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:12.158 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:02:13.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 48.49/60.0
2026-01-21T23:02:15.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:15.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:02:15.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:15.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:15.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 46.46/60.0
2026-01-21T23:02:17.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:02:17.799 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 44.43/60.0
2026-01-21T23:02:18.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:18.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:02:18.186 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:18.186 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:02:19.829 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 42.398/60.0
2026-01-21T23:02:21.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:21.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:02:21.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:21.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:21.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 40.368/60.0
2026-01-21T23:02:23.890 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 38.337/60.0
2026-01-21T23:02:24.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:24.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:02:24.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:24.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:02:25.921 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 36.308/60.0
2026-01-21T23:02:27.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:27.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00000000000003
2026-01-21T23:02:27.233 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:27.233 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T23:02:27.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:02:27.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 34.276/60.0
2026-01-21T23:02:30.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 32.246/60.0
2026-01-21T23:02:30.236 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:30.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-21T23:02:30.259 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:30.259 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:32.125 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 30.152/60.0
2026-01-21T23:02:33.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:33.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:02:33.282 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:33.282 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:34.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 28.074/60.0
2026-01-21T23:02:36.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 26.041/60.0
2026-01-21T23:02:36.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:36.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:02:36.301 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:36.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:02:37.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:02:38.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 24.01/60.0
2026-01-21T23:02:39.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:39.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:02:39.321 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:39.321 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:02:40.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 21.98/60.0
2026-01-21T23:02:42.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 19.949/60.0
2026-01-21T23:02:42.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:42.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:02:42.325 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:42.325 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:44.309 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 17.919/60.0
2026-01-21T23:02:45.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:45.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:02:45.348 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:45.348 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:46.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 15.888/60.0
2026-01-21T23:02:47.490 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:02:48.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:48.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:02:48.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:48.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:02:48.370 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 13.858/60.0
2026-01-21T23:02:50.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 11.827/60.0
2026-01-21T23:02:51.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:51.392 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:02:51.392 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:51.392 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:02:52.469 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 9.796/60.0
2026-01-21T23:02:54.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:54.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T23:02:54.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:54.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:02:54.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 7.728/60.0
2026-01-21T23:02:56.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 5.698/60.0
2026-01-21T23:02:57.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:02:57.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.999
2026-01-21T23:02:57.418 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:02:57.418 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T23:02:57.498 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:02:57.499 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:02:52.414764
2026-01-21T23:02:57.499 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:02:52.414764
2026-01-21T23:02:57.499 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:02:57.499 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:02:57.499 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:02:57.499 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:02:57&start_after=2026-01-20T21:02:57&end_after=2026-01-21T21:02:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:02:57.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.660 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:02:57.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:02:57.662 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:02:57.662 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:02:57.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:02:57.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:02:57.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 524.337354
2026-01-21T23:02:57.663 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:02:58.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 3.667/60.0
2026-01-21T23:02:59.665 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:02:59.666 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:02:59.666 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:02:59.666480    Obs time: 2026-01-21 21:11:42
2026-01-21T23:02:59.666 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:42.333520
2026-01-21T23:02:59.666 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  522
2026-01-21T23:02:59.666 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:03:00.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:00.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-21T23:03:00.422 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:00.422 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:00.591 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 1.638/60.0
2026-01-21T23:03:02.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:03.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:03.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:03:03.442 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:03.442 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:04.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:06.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:06.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:03:06.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:06.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:06.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:03:06.682 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:08.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:09.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:09.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-21T23:03:09.485 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:09.485 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T23:03:10.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:12.488 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:12.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 179.99899999999997
2026-01-21T23:03:12.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:12.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-21T23:03:12.774 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:14.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:15.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:15.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.998
2026-01-21T23:03:15.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:15.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:03:16.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:03:16.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:18.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:18.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T23:03:18.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:18.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:03:18.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:20.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:21.500 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:21.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:03:21.517 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:21.517 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:22.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:24.520 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:24.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:03:24.536 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:24.536 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:24.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 1/5, Remaining exp time 0.0/60.0
2026-01-21T23:03:26.605 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 5 done. Exposure state = 0
2026-01-21T23:03:26.605 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:03:26.607 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:03:26.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:03:26.725 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 2 of 5
2026-01-21T23:03:26.727 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029406.7277067
2026-01-21T23:03:26.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 59.77/60.0
2026-01-21T23:03:27.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:27.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:03:27.555 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:27.555 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:29.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 57.741/60.0
2026-01-21T23:03:30.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:30.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:03:30.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:30.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:03:31.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 55.709/60.0
2026-01-21T23:03:33.079 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 53.681/60.0
2026-01-21T23:03:33.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:33.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:03:33.585 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:33.585 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:35.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 51.649/60.0
2026-01-21T23:03:36.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:36.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:03:36.606 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:36.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:36.702 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:03:37.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 49.619/60.0
2026-01-21T23:03:39.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 47.589/60.0
2026-01-21T23:03:39.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:39.631 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:03:39.631 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:39.631 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:03:41.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 45.559/60.0
2026-01-21T23:03:42.635 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:42.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:03:42.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:42.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:03:43.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 43.526/60.0
2026-01-21T23:03:45.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 41.497/60.0
2026-01-21T23:03:45.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:45.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:03:45.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:45.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:46.710 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:03:47.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 39.465/60.0
2026-01-21T23:03:48.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:48.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:03:48.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:48.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:03:49.323 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 37.435/60.0
2026-01-21T23:03:51.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 35.405/60.0
2026-01-21T23:03:51.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:51.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:03:51.681 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:51.682 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:03:53.384 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 33.374/60.0
2026-01-21T23:03:54.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:54.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:03:54.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:54.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:03:55.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 31.345/60.0
2026-01-21T23:03:56.720 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:03:56.739 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:03:52.614079
2026-01-21T23:03:56.739 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:03:52.614079
2026-01-21T23:03:56.739 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:03:56.739 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:03:56.739 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:03:56.739 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:03:56&start_after=2026-01-20T21:03:56&end_after=2026-01-21T21:03:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:03:56.857 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.858 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.858 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.862 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.863 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.864 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.865 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.866 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.867 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.869 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.870 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.871 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:03:56.872 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:03:56.873 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:03:56.873 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:03:56.873 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:03:56.873 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:03:56.873 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 465.126193
2026-01-21T23:03:56.874 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:03:57.445 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 29.313/60.0
2026-01-21T23:03:57.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:03:57.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:03:57.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:03:57.710 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:03:58.876 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:03:58.895 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:03:58.895 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:03:58.895615    Obs time: 2026-01-21 21:11:42
2026-01-21T23:03:58.895 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:43.104385
2026-01-21T23:03:58.895 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  463
2026-01-21T23:03:58.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:03:59.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 27.282/60.0
2026-01-21T23:04:00.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:00.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:04:00.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:00.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:01.506 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 25.251/60.0
2026-01-21T23:04:03.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 23.223/60.0
2026-01-21T23:04:03.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:03.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:04:03.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:03.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:05.567 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 21.191/60.0
2026-01-21T23:04:05.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:04:06.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:06.759 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:04:06.759 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:06.759 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:07.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 19.16/60.0
2026-01-21T23:04:09.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 17.13/60.0
2026-01-21T23:04:09.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:09.763 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:04:09.763 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:09.763 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:04:11.658 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 15.1/60.0
2026-01-21T23:04:12.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:12.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-21T23:04:12.785 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:12.785 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:04:13.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 13.071/60.0
2026-01-21T23:04:15.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 11.04/60.0
2026-01-21T23:04:15.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:15.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.999
2026-01-21T23:04:15.789 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:15.789 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:04:15.913 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:04:17.750 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 9.009/60.0
2026-01-21T23:04:18.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:18.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:04:18.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:18.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:19.780 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 6.978/60.0
2026-01-21T23:04:21.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 4.949/60.0
2026-01-21T23:04:21.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:21.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:04:21.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:21.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:23.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 2.917/60.0
2026-01-21T23:04:24.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:24.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:04:24.837 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:24.837 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:25.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.888/60.0
2026-01-21T23:04:25.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:04:27.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:27.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:04:27.857 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:27.857 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:04:27.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:29.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:30.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:30.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T23:04:30.878 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:30.878 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:04:32.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:33.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:33.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T23:04:33.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:33.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:04:34.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:35.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:04:36.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:36.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:36.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:04:36.920 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:36.920 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:38.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:39.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:39.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:04:39.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:39.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:40.235 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:42.266 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:42.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:42.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:04:42.949 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:42.949 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:04:44.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:45.939 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:04:45.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:45.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:04:45.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:45.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:04:46.326 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:48.357 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 2/5, Remaining exp time 0.0/60.0
2026-01-21T23:04:48.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:48.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:04:48.976 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:48.976 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:04:49.181 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 2 of 5 done. Exposure state = 0
2026-01-21T23:04:49.181 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:04:49.183 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:04:49.298 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 3 of 5
2026-01-21T23:04:49.300 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029489.3006358
2026-01-21T23:04:50.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 58.943/60.0
2026-01-21T23:04:51.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:51.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:04:51.997 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:51.997 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:04:52.418 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 56.913/60.0
2026-01-21T23:04:54.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 54.882/60.0
2026-01-21T23:04:54.999 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:55.016 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00000000000003
2026-01-21T23:04:55.016 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:55.016 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:04:55.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:04:55.949 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:04:52.829160
2026-01-21T23:04:55.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:04:52.829160
2026-01-21T23:04:55.949 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:04:55.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:04:55.949 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:04:55.949 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:04:55&start_after=2026-01-20T21:04:55&end_after=2026-01-21T21:04:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:04:56.065 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.067 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.069 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.070 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.071 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.073 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.074 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.075 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.078 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.079 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:04:56.080 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:04:56.081 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:04:56.081 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:04:56.081 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:04:56.081 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:04:56.081 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 405.918358
2026-01-21T23:04:56.099 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:04:56.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 52.852/60.0
2026-01-21T23:04:58.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:04:58.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99900000000002
2026-01-21T23:04:58.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:04:58.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:04:58.101 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:04:58.102 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:04:58.102 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:04:58.102484    Obs time: 2026-01-21 21:11:42
2026-01-21T23:04:58.102 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:43.897516
2026-01-21T23:04:58.102 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  403
2026-01-21T23:04:58.102 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:04:58.509 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 50.821/60.0
2026-01-21T23:05:00.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 48.792/60.0
2026-01-21T23:05:01.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:01.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00000000000003
2026-01-21T23:05:01.041 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:01.041 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:05:02.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 46.725/60.0
2026-01-21T23:05:04.044 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:04.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99900000000002
2026-01-21T23:05:04.045 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:04.045 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:05:04.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 44.655/60.0
2026-01-21T23:05:05.109 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:05:06.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 42.588/60.0
2026-01-21T23:05:07.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:07.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-21T23:05:07.068 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:07.068 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:05:08.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 40.52/60.0
2026-01-21T23:05:10.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:10.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:05:10.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:10.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:10.917 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 38.451/60.0
2026-01-21T23:05:12.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 36.383/60.0
2026-01-21T23:05:13.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:13.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:05:13.113 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:13.113 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:15.053 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 34.315/60.0
2026-01-21T23:05:15.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:05:16.116 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:16.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:05:16.117 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:16.117 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:17.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 32.247/60.0
2026-01-21T23:05:19.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:19.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-21T23:05:19.137 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:19.137 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T23:05:19.190 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 30.179/60.0
2026-01-21T23:05:21.257 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 28.111/60.0
2026-01-21T23:05:22.140 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:22.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-21T23:05:22.141 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:22.141 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:23.326 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 26.043/60.0
2026-01-21T23:05:25.129 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:05:25.144 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:25.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:05:25.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:25.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:05:25.394 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 23.975/60.0
2026-01-21T23:05:27.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 21.907/60.0
2026-01-21T23:05:28.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:28.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:05:28.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:28.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:05:29.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 19.839/60.0
2026-01-21T23:05:31.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:31.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:05:31.200 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:31.200 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:31.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 17.773/60.0
2026-01-21T23:05:33.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 15.702/60.0
2026-01-21T23:05:34.203 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:34.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:05:34.204 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:34.204 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:35.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:05:35.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 13.635/60.0
2026-01-21T23:05:37.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:37.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-21T23:05:37.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:37.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T23:05:37.802 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 11.568/60.0
2026-01-21T23:05:39.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 9.499/60.0
2026-01-21T23:05:40.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:40.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-21T23:05:40.229 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:40.229 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:41.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 7.431/60.0
2026-01-21T23:05:43.230 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:43.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:05:43.253 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:43.253 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:05:44.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 5.362/60.0
2026-01-21T23:05:45.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:05:46.074 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 3.294/60.0
2026-01-21T23:05:46.255 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:46.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:05:46.272 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:46.272 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:48.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 1.226/60.0
2026-01-21T23:05:49.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:49.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:05:49.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:49.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:05:50.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:05:52.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:05:52.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:52.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:05:52.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:52.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:05:54.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:05:55.152 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:05:55.171 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:05:53.030868
2026-01-21T23:05:55.171 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:05:53.030868
2026-01-21T23:05:55.171 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:05:55.171 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:05:55.171 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:05:55.171 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:05:55&start_after=2026-01-20T21:05:55&end_after=2026-01-21T21:05:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:05:55.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:55.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:05:55.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:55.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:05:55.391 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.399 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.404 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:05:55.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:05:55.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:05:55.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:05:55.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:05:55.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:05:55.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 346.591802
2026-01-21T23:05:55.409 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:05:56.414 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:05:57.409 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:05:57.427 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:05:57.427 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:05:57.427635    Obs time: 2026-01-21 21:11:42
2026-01-21T23:05:57.427 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:44.572365
2026-01-21T23:05:57.427 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  344
2026-01-21T23:05:57.427 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:05:58.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:05:58.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-21T23:05:58.306 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:05:58.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:05:58.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:00.550 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:01.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:01.334 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-21T23:06:01.334 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:01.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:06:02.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:04.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:04.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:06:04.356 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:04.356 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:06:04.434 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:06:04.686 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:06.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:07.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:07.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:06:07.380 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:07.380 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:06:08.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:10.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:10.383 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:06:10.383 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:10.383 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:06:10.890 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 3/5, Remaining exp time 0.0/60.0
2026-01-21T23:06:11.766 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 3 of 5 done. Exposure state = 0
2026-01-21T23:06:11.766 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:06:11.788 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:06:11.982 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 4 of 5
2026-01-21T23:06:11.984 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029571.984237
2026-01-21T23:06:12.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 59.095/60.0
2026-01-21T23:06:13.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:13.407 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:06:13.407 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:13.407 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:06:14.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:06:14.989 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 57.025/60.0
2026-01-21T23:06:16.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:16.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:06:16.410 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:16.410 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:06:17.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 54.995/60.0
2026-01-21T23:06:19.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 52.966/60.0
2026-01-21T23:06:19.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:19.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:06:19.430 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:19.430 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:06:21.080 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 50.935/60.0
2026-01-21T23:06:22.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:22.455 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T23:06:22.455 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:22.455 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:06:23.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 48.904/60.0
2026-01-21T23:06:24.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:06:25.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 46.798/60.0
2026-01-21T23:06:25.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:25.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:06:25.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:25.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:06:27.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 44.73/60.0
2026-01-21T23:06:28.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:28.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:06:28.478 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:28.478 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:06:29.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 42.662/60.0
2026-01-21T23:06:31.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 40.594/60.0
2026-01-21T23:06:31.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:31.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:06:31.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:31.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:06:33.526 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 38.528/60.0
2026-01-21T23:06:34.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:06:34.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:34.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:06:34.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:34.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:06:35.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 36.458/60.0
2026-01-21T23:06:37.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:37.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-21T23:06:37.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:37.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:06:37.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 34.39/60.0
2026-01-21T23:06:39.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 32.322/60.0
2026-01-21T23:06:40.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:40.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 179.99900000000002
2026-01-21T23:06:40.555 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:40.555 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T23:06:41.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 30.254/60.0
2026-01-21T23:06:43.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:43.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.001
2026-01-21T23:06:43.577 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:43.577 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:06:43.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 28.186/60.0
2026-01-21T23:06:44.473 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:06:45.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 26.118/60.0
2026-01-21T23:06:46.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:46.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-21T23:06:46.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:46.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:06:48.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 24.05/60.0
2026-01-21T23:06:49.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:49.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.999
2026-01-21T23:06:49.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:49.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T23:06:50.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 21.982/60.0
2026-01-21T23:06:52.138 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 19.914/60.0
2026-01-21T23:06:52.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:52.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99899999999997
2026-01-21T23:06:52.602 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:52.602 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:06:54.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 17.846/60.0
2026-01-21T23:06:54.480 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:06:54.481 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:06:53.257399
2026-01-21T23:06:54.481 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:06:53.257399
2026-01-21T23:06:54.481 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:06:54.481 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:06:54.481 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:06:54.481 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:06:54&start_after=2026-01-20T21:06:54&end_after=2026-01-21T21:06:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:06:54.608 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.609 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.617 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.618 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.619 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.621 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.622 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:06:54.624 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:06:54.625 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:06:54.625 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:06:54.625 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:06:54.625 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:06:54.625 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 287.374213
2026-01-21T23:06:54.626 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:06:55.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:55.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.999
2026-01-21T23:06:55.622 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:55.622 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:06:56.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 15.777/60.0
2026-01-21T23:06:56.628 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:06:56.649 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:06:56.649 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:06:56.649711    Obs time: 2026-01-21 21:11:42
2026-01-21T23:06:56.649 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:45.350289
2026-01-21T23:06:56.649 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  285
2026-01-21T23:06:56.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:06:58.348 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 13.711/60.0
2026-01-21T23:06:58.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:06:58.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-21T23:06:58.643 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:06:58.643 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:00.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 11.637/60.0
2026-01-21T23:07:01.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:01.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:07:01.665 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:01.665 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:07:02.478 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 9.574/60.0
2026-01-21T23:07:03.656 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:07:04.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 7.507/60.0
2026-01-21T23:07:04.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:04.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T23:07:04.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:04.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:07:06.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 5.438/60.0
2026-01-21T23:07:07.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:07.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:07:07.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:07.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:08.682 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 3.369/60.0
2026-01-21T23:07:10.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:10.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:07:10.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:10.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:07:10.750 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 1.301/60.0
2026-01-21T23:07:12.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:13.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:07:13.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:13.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.00000000000003
2026-01-21T23:07:13.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:13.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:07:14.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:16.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:16.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T23:07:16.745 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:16.745 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:16.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:19.022 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:19.748 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:19.767 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:07:19.767 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:19.768 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:21.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:22.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:22.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:07:22.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:22.772 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:07:23.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:23.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:07:25.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:25.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:25.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:07:25.793 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:25.793 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:07:27.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:28.796 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:28.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:07:28.797 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:28.797 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:07:29.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:31.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:31.800 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:31.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-21T23:07:31.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:31.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:33.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 4/5, Remaining exp time 0.0/60.0
2026-01-21T23:07:33.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:07:34.485 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 4 of 5 done. Exposure state = 0
2026-01-21T23:07:34.485 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:07:34.506 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:07:34.741 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 5 of 5
2026-01-21T23:07:34.743 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029654.7430565
2026-01-21T23:07:34.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:34.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-21T23:07:34.822 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:34.822 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-21T23:07:35.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 59.244/60.0
2026-01-21T23:07:37.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 57.214/60.0
2026-01-21T23:07:37.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:37.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99899999999997
2026-01-21T23:07:37.839 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:37.839 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:07:39.590 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 55.183/60.0
2026-01-21T23:07:40.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:40.843 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00000000000003
2026-01-21T23:07:40.843 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:40.843 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-21T23:07:41.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 53.153/60.0
2026-01-21T23:07:43.651 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 51.122/60.0
2026-01-21T23:07:43.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:07:43.847 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:43.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.001
2026-01-21T23:07:43.868 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:43.868 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:07:45.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 49.092/60.0
2026-01-21T23:07:46.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:46.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T23:07:46.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:46.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:47.749 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 47.024/60.0
2026-01-21T23:07:49.780 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 44.993/60.0
2026-01-21T23:07:49.876 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:49.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-21T23:07:49.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:49.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:07:51.810 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 42.963/60.0
2026-01-21T23:07:52.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:52.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-21T23:07:52.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:52.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:07:53.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:07:53.705 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:06:53.257399
2026-01-21T23:07:53.705 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:06:53.257399
2026-01-21T23:07:53.705 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:07:53.705 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:07:53.705 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:07:53.705 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:07:53&start_after=2026-01-20T21:07:53&end_after=2026-01-21T21:07:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:07:53.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:07:53.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:07:53.846 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:07:53.846 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:07:53.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:07:53.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:07:53.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 228.153498
2026-01-21T23:07:53.866 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:07:53.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 40.932/60.0
2026-01-21T23:07:55.868 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:07:55.887 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:07:55.887 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:07:55.887682    Obs time: 2026-01-21 21:11:42
2026-01-21T23:07:55.887 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:46.112318
2026-01-21T23:07:55.887 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  226
2026-01-21T23:07:55.887 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:07:55.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:55.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T23:07:55.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:55.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:07:55.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 38.864/60.0
2026-01-21T23:07:57.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 36.834/60.0
2026-01-21T23:07:58.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:07:58.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T23:07:58.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:07:58.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:00.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 34.804/60.0
2026-01-21T23:08:01.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:01.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-21T23:08:01.928 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:01.928 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:08:02.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 32.736/60.0
2026-01-21T23:08:02.894 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:08:04.143 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 30.668/60.0
2026-01-21T23:08:04.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:04.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-21T23:08:04.952 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:04.952 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-21T23:08:06.211 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 28.6/60.0
2026-01-21T23:08:07.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:07.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-21T23:08:07.956 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:07.956 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:08.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 26.532/60.0
2026-01-21T23:08:10.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 24.463/60.0
2026-01-21T23:08:10.959 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:10.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:08:10.977 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:10.977 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:12.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 22.395/60.0
2026-01-21T23:08:12.903 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:08:13.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:13.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-21T23:08:13.981 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:13.981 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:08:14.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 20.327/60.0
2026-01-21T23:08:16.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 18.259/60.0
2026-01-21T23:08:16.984 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:17.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-21T23:08:17.001 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:17.001 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:18.619 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 16.192/60.0
2026-01-21T23:08:20.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:20.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:08:20.005 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:20.005 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:20.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 14.123/60.0
2026-01-21T23:08:22.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 12.055/60.0
2026-01-21T23:08:22.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:08:23.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:23.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-21T23:08:23.029 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:23.029 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:08:24.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 9.985/60.0
2026-01-21T23:08:26.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:26.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-21T23:08:26.053 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:26.053 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:26.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 7.917/60.0
2026-01-21T23:08:28.961 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 5.85/60.0
2026-01-21T23:08:29.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:29.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:08:29.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:29.078 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:31.029 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 3.781/60.0
2026-01-21T23:08:32.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:32.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:08:32.083 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:32.083 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:32.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:08:33.096 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 1.713/60.0
2026-01-21T23:08:35.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:35.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-21T23:08:35.108 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:35.108 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:35.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:37.233 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:38.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:38.111 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-21T23:08:38.111 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:38.111 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:08:39.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:41.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:41.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:08:41.135 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:41.135 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:41.369 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:42.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:08:43.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:44.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:44.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-21T23:08:44.156 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:44.156 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-21T23:08:45.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:47.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:47.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-21T23:08:47.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:47.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:08:47.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:49.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:50.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:50.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-21T23:08:50.188 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:50.188 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-21T23:08:51.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:52.940 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:08:52.942 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:07:53.456427
2026-01-21T23:08:52.943 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:07:53.456427
2026-01-21T23:08:52.943 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:08:52.943 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:08:52.944 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:08:52.944 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:08:52&start_after=2026-01-20T21:08:52&end_after=2026-01-21T21:08:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:08:53.076 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.080 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.083 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.086 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.094 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.101 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:08:53.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:08:53.129 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:08:53.129 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:08:53.129 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:08:53.129 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:08:53.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 168.869956
2026-01-21T23:08:53.147 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:08:53.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:53.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-21T23:08:53.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:53.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-21T23:08:53.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:55.149 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:08:55.171 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:08:55.172 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:08:55.172154    Obs time: 2026-01-21 21:11:42
2026-01-21T23:08:55.172 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:46.827846
2026-01-21T23:08:55.172 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  166
2026-01-21T23:08:55.172 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:08:55.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: WD40_phot_17231926_13386_13432.json , Iteration 1/1, Unit 1/1 Detector state: EXPOSING Exposure 5/5, Remaining exp time 0.0/60.0
2026-01-21T23:08:56.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:08:56.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-21T23:08:56.213 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:08:56.213 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-21T23:08:57.244 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 5 of 5 done. Exposure state = 0
2026-01-21T23:08:57.244 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:08:57.267 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:08:59.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T23:08:59.217 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 1
2026-01-21T23:08:59.217 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:08:59.217 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:08:59.744 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:08:59.744 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script WD40_phot_17231926_13386_13432.json was run successfully
2026-01-21T23:08:59.744 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510679 COMPLETED 13432 reason
2026-01-21T23:08:59.745 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510679 COMPLETED 13432 reason
2026-01-21T23:08:59.745 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T23:08:59.745 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T23:08:59.745 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T23:08:59.745 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T23:08:59.745 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:08:59.746 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:09:02.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:09:02.749 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T23:09:02.749 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T23:09:04.752 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:09:04.752 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T23:09:04.752 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T23:09:04.752 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T23:09:04.752 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T23:09:04.755 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T23:09:04.755 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T21:11:42Z
2026-01-21T23:09:04.756 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T23:09:04.756 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T23:09:04.756 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T23:09:04.756 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T23:09:04.756 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T23:09:04.757 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:09:04.757 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:09:05.258 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:09:05.258 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T23:09:05.258 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T23:09:05.258 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:09:05.258 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:09:05.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:09:05.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:09:05.259 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:09:05.260 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T23:09:05.266 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 07:16:38.03232   Targ dec = -19:42:38.0376
2026-01-21T23:09:05.266 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:09:05.266 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:09:05.266 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:09:05.274 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:09:05.274 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:09:05.274 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:09:05.274 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:09:06.335 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:09:08.337 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T23:09:08.337 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:09:08.386 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:09:08.762 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:09:08.762 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T23:09:08.762 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T23:09:08.763 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T23:09:08.763 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T23:09:08.763 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510679
2026-01-21T23:09:08.763 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T23:09:08.763 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T23:09:08.763 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T20:59:01', 'end': '2026-01-21T21:09:08', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '607.0', 'events': {}}} with config status ID 17510679
2026-01-21T23:09:09.052 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T23:09:09.052 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T20:58:28Z', 'guide_off', 'config_id 13432', 'config_status_id 17510679', 'update_OCS 17510679 ATTEMPTED', 'run_script setup_WD40_phot_17231926_13386_13432.json', 'run_script WD40_phot_17231926_13386_13432.json', 'update_OCS 17510679 COMPLETED 13432 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:11:42Z', 'run_script arc_flat_lamp_off.json'] at time 23:09:09
2026-01-21T23:09:12.192 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:09:22.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:09:32.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:09:42.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:09:52.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:09:52.234 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:08:53.664929
2026-01-21T23:09:52.234 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:08:53.664929
2026-01-21T23:09:52.234 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:09:52.234 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:09:52.234 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:09:52.234 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:09:52&start_after=2026-01-20T21:09:52&end_after=2026-01-21T21:09:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:09:52.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.364 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.375 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.379 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.381 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:09:52.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:09:52.384 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:09:52.385 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:09:52.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:09:52.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:09:52.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 109.61475
2026-01-21T23:09:52.386 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:09:54.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:09:54.389 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:09:54.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:09:54.389143    Obs time: 2026-01-21 21:11:42
2026-01-21T23:09:54.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:47.610857
2026-01-21T23:09:54.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  107
2026-01-21T23:09:54.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:10:01.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:10:11.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:10:21.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:10:31.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:10:41.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:10:51.453 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:10:51.471 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:09:53.875342
2026-01-21T23:10:51.471 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:09:53.875342
2026-01-21T23:10:51.471 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:10:51.471 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:10:51.471 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:10:51.471 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:10:51&start_after=2026-01-20T21:10:51&end_after=2026-01-21T21:10:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:10:51.597 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.598 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.598 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.601 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.602 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.604 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.605 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.606 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.608 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.608 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:10:51.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:10:51.613 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:10:51.613 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:10:51.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:10:51.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:10:51.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 50.386541
2026-01-21T23:10:51.614 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:10:53.616 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:10:53.617 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:10:53.617 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:10:53.617372    Obs time: 2026-01-21 21:11:42
2026-01-21T23:10:53.617 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:48.382628
2026-01-21T23:10:53.617 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  48
2026-01-21T23:10:53.617 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:11:00.624 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:11:10.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:11:20.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:11:30.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:11:40.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:11:50.676 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:11:50.677 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:10:54.076739
2026-01-21T23:11:50.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:10:54.076739
2026-01-21T23:11:50.677 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:11:50.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:11:50.677 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:11:50.677 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:11:50&start_after=2026-01-20T21:11:50&end_after=2026-01-21T21:11:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:11:50.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.797 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.799 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.800 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.802 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.802 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.803 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.804 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.806 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:11:50.811 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:11:50.812 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:11:50.812 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:11:50.812 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:11:50.812 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:11:50.812 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -8.812643
2026-01-21T23:11:50.813 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:11:52.815 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:11:52.816 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:11:52.816 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:11:52.816481    Obs time: 2026-01-21 21:11:42
2026-01-21T23:11:52.816 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:49.183519
2026-01-21T23:11:52.816 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86389
2026-01-21T23:11:52.816 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:11:42Z', 'guide_off', 'config_id 13504', 'config_status_id 17510894', 'update_OCS 17510894 ATTEMPTED', 'run_script setup_SN2025advo_spec_17232141_13458_13504.json', 'run_script SN2025advo_spec_17232141_13458_13504.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510894 COMPLETED 13504 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:44:56Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:11:52.816 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T23:11:52.816 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T23:11:52.816 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T23:11:52.816 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T23:11:52.816 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:11:52.816 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T23:11:52.817 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T23:11:52.817 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T23:11:52.817 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:11:52.817 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:11:55.821 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T23:11:55.821 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T23:11:57.823 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:11:57.823 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T23:11:57.823 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T21:11:42Z
2026-01-21T23:11:57.823 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T21:11:42Z
2026-01-21T23:11:57.823 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T23:11:57.823 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T23:11:57.823 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T23:11:57.823 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T23:11:57.823 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:11:57.823 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:11:59.824 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:12:00.825 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T23:12:00.825 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T23:12:02.827 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T23:12:02.827 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13504
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13504
2026-01-21T23:12:02.827 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17510894
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17510894
2026-01-21T23:12:02.827 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510894 ATTEMPTED
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510894 ATTEMPTED
2026-01-21T23:12:02.827 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:12:02.827 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:12:02.827 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 8.29441, 'targ_dec': 4.61476787169, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_SN2025advo_spec_17232141_13458_13504.json'}
2026-01-21T23:12:02.828 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:12:02.828 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:12:02.828 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T23:12:02.828 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510894
2026-01-21T23:12:02.828 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T23:12:02.828 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T23:12:02.828 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17510894
2026-01-21T23:12:02.916 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T23:12:03.328 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:12:03.328 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_SN2025advo_spec_17232141_13458_13504.json 1 times
2026-01-21T23:12:03.328 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T23:12:03.331 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T23:12:03.331 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T23:12:03.331 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T23:12:06.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:07.361 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:08.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:09.400 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:09.835 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:12:10.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:11.439 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:12.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:13.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:14.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:15.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:16.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:17.555 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:18.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:19.595 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:19.845 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:12:20.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:21.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:22.651 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:23.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:24.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:25.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:26.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:27.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:28.782 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:29.801 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:12:29.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:12:30.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T23:12:30.823 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  8.29490517079291 is close enough to target ra = 8.29441
2026-01-21T23:12:30.823 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  4.61528640564717 is close enough to target dec = 4.61476787169
2026-01-21T23:12:30.823 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T23:12:30.823 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:12:30.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:12:30.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:12:30.823 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:12:30.824 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T23:12:30.824 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T23:12:30.835 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:12:30.835 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:12:30.880 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:12:31.881 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:12:31.882 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:12:31.933 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:12:32.935 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:12:32.986 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:12:33.988 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:12:33.989 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.01
2026-01-21T23:12:33.989 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:11:45
2026-01-21T23:12:33.989 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:11:45
2026-01-21T23:12:33.989 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:12:33.989 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09235614173228344
2026-01-21T23:12:33.992 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T23:12:33.992 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T23:12:33.992 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T23:12:34.000 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:12:34.000 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:12:34.039 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:12:35.041 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:12:35.041 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:12:35.093 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:12:36.093 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:12:36.146 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:12:37.147 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:12:37.148 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.87
2026-01-21T23:12:37.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:12:17
2026-01-21T23:12:37.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:12:17
2026-01-21T23:12:37.149 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:12:37.149 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09244102362204722
2026-01-21T23:12:39.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:12:42.206 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T23:12:42.207 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:12:42.207 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:12:42.207 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:12:42.207 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:12:42.207 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:12:42.209 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:12:42.209 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:12:42.211 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:12:42.321 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:12:42.321 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:12:42.323 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029962.3234944
2026-01-21T23:12:47.717 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T23:12:48.584 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:12:48.585 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:12:48.604 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:12:49.877 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:12:49.896 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:11:54.277536
2026-01-21T23:12:49.897 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:11:54.277536
2026-01-21T23:12:49.897 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:12:49.897 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:12:49.897 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:12:49.897 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:12:49&start_after=2026-01-20T21:12:49&end_after=2026-01-21T21:12:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:12:50.019 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.024 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:12:50.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:12:50.035 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:12:50.035 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:12:50.035 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:12:50.035 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:12:50.035 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:20:00Z
2026-01-21T23:12:50.035 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 4029.964099
2026-01-21T23:12:50.035 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:12:51.720 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T23:12:51.720 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T23:12:51.741 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T23:12:51.741 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T23:12:51.741 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:17:39.88 = 447898.2 arcseconds
2026-01-21T23:12:51.741 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 04:36:53.16 = 16613.16 arcseconds
2026-01-21T23:12:51.741 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-21T23:12:51.761 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T23:12:51.761 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.283
2026-01-21T23:12:51.761 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T23:12:51.761 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:17:39.558, +04:36:51.424).
2026-01-21T23:12:51.761 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 17 39.558  +04 36 51.424 .
2026-01-21T23:12:51.761 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 17 39.558  +04 36 51.424 .
2026-01-21T23:12:51.761 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 447893.37
2026-01-21T23:12:51.762 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: 16611.424
2026-01-21T23:12:51.973 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T23:12:56.994 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T23:12:56.994 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:12:56.994 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:12:56.994 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:12:56.995 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:12:56.995 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:12:56.996 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:12:56.997 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:12:56.998 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:12:57.098 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:12:57.099 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:12:57.100 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769029977.1007195
2026-01-21T23:12:58.496 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:12:59.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:13:01.360 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:13:01.360 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:13:01.383 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:13:01.501 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T23:13:05.505 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T23:13:09.055 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:13:15.557 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T23:13:15.557 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T23:13:15.557 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:17:39.88 = 447898.2 arcseconds
2026-01-21T23:13:15.557 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 04:36:53.16 = 16613.16 arcseconds
2026-01-21T23:13:15.557 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-21T23:13:15.577 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T23:13:15.577 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.239
2026-01-21T23:13:15.577 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T23:13:15.577 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:17:35.780, +04:37:35.830).
2026-01-21T23:13:15.577 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 17 35.780  +04 37 35.830 .
2026-01-21T23:13:15.577 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 17 35.780  +04 37 35.830 .
2026-01-21T23:13:15.577 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 447836.69999999995
2026-01-21T23:13:15.577 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: 16655.83
2026-01-21T23:13:15.788 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T23:13:19.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:13:20.802 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T23:13:20.802 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:13:20.802 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:13:20.803 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:13:20.803 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:13:20.803 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:13:20.804 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:13:20.805 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:13:20.806 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:13:20.900 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:13:20.900 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:13:20.902 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769030000.902217
2026-01-21T23:13:22.304 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:13:25.160 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:13:25.160 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:13:25.180 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:13:25.310 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T23:13:29.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:13:31.337 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:13:31.337 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:13:31.337 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:13:31.338 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:13:31.338 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:13:31.339 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:13:31.339 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:13:31.341 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:13:31.467 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:13:31.467 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:13:31.468 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769030011.4688213
2026-01-21T23:13:32.839 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:13:35.728 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:13:35.728 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:13:35.730 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:13:35.845 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T23:13:39.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:13:43.061 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2193  4206  14.8 to host 127.0.0.1 on port 12360
2026-01-21T23:13:43.061 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:13:43.061 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:13:46.064 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2193  4206  14.8
2026-01-21T23:13:46.064 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2193  4206  14.8
2026-01-21T23:13:48.065 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:13:49.130 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:13:49.151 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:12:54.482829
2026-01-21T23:13:49.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:12:54.482829
2026-01-21T23:13:49.151 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:13:49.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:13:49.151 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:13:49.151 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:13:49&start_after=2026-01-20T21:13:49&end_after=2026-01-21T21:13:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:13:49.293 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.294 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.295 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.296 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.297 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.300 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.301 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.302 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.305 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.306 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:13:49.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:13:49.309 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:13:49.309 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:13:49.309 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:13:49.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:13:49.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:20:00Z
2026-01-21T23:13:49.309 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 3970.690332
2026-01-21T23:13:49.309 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:13:58.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:14:08.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:14:18.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:14:27.104 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T23:14:27.104 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:14:27.104 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:14:28.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:14:30.105 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T23:14:30.105 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T23:14:32.107 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:14:32.107 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:14:32.107 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:14:32.107 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:14:32.107 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:14:32.107 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:14:32.107 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:14:32.107 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:14:33.130 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:14:35.132 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T23:14:35.132 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:14:35.132 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:14:36.107 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:14:36.107 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_SN2025advo_spec_17232141_13458_13504.json was run successfully
2026-01-21T23:14:36.107 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:14:36.107 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:14:36.107 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:14:36.107 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script SN2025advo_spec_17232141_13458_13504.json
2026-01-21T23:14:36.107 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'FAST', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 1500000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'SN2025advo_spec_17232141_13458_13504.json'}
2026-01-21T23:14:36.107 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:14:36.107 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:14:36.608 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:14:36.608 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script SN2025advo_spec_17232141_13458_13504.json 1 times
2026-01-21T23:14:36.608 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-21T23:14:36.608 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:14:36.608 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:14:36.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:14:36.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:14:36.608 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:14:36.608 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:14:36.608 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:14:36.608 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:14:36.618 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:14:36.619 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:14:36.619 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T23:14:36.619 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:14:36.619 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:14:36.657 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:14:37.659 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T23:14:37.659 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T23:14:37.659 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:14:37.659 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:14:37.710 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:14:38.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:14:38.711 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:14:38.763 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:14:39.764 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:14:39.766 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.36
2026-01-21T23:14:39.766 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:13:54
2026-01-21T23:14:39.766 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:13:54
2026-01-21T23:14:39.766 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:14:39.766 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09275023622047242
2026-01-21T23:14:39.770 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T23:14:39.770 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:14:39.770 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:14:40.800 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:14:42.820 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T23:14:42.821 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:14:42.821 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:14:42.821 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:14:42.821 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:14:42.823 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:14:42.823 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:14:42.824 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:14:42.945 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:14:42.945 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:14:42.947 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769030082.9473493
2026-01-21T23:14:43.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T23:14:43.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T23:14:43.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:14:43.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:14:43.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:14:43.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:14:46.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:14:46.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:14:46.859 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:14:46.859 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:14:48.370 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:14:48.388 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:13:54.684778
2026-01-21T23:14:48.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:13:54.684778
2026-01-21T23:14:48.388 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:14:48.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:14:48.388 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:14:48.389 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:14:48&start_after=2026-01-20T21:14:48&end_after=2026-01-21T21:14:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:14:48.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1494.591/1500.0
2026-01-21T23:14:48.543 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.543 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.546 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.553 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.555 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:14:48.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:14:48.559 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:14:48.559 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:14:48.559 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:14:48.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:14:48.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:20:00Z
2026-01-21T23:14:48.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 3911.440353
2026-01-21T23:14:48.559 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:14:49.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:14:49.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:14:49.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:14:49.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:14:50.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1492.552/1500.0
2026-01-21T23:14:52.457 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1490.521/1500.0
2026-01-21T23:14:52.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:14:52.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:14:52.889 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:14:52.889 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:14:54.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1488.49/1500.0
2026-01-21T23:14:55.892 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:14:55.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:14:55.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:14:55.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:14:56.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1486.46/1500.0
2026-01-21T23:14:57.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:14:58.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1484.43/1500.0
2026-01-21T23:14:58.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:14:58.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:14:58.917 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:14:58.917 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:00.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1482.399/1500.0
2026-01-21T23:15:01.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:01.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:01.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:01.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:02.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1480.369/1500.0
2026-01-21T23:15:04.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1478.338/1500.0
2026-01-21T23:15:04.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:04.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:04.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:04.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:06.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1476.308/1500.0
2026-01-21T23:15:07.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:15:07.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:07.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:07.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:07.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:08.700 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1474.278/1500.0
2026-01-21T23:15:10.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1472.247/1500.0
2026-01-21T23:15:10.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:10.975 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:10.975 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:10.975 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:12.761 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1470.217/1500.0
2026-01-21T23:15:13.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:13.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:13.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:13.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:14.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1468.188/1500.0
2026-01-21T23:15:16.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1466.157/1500.0
2026-01-21T23:15:16.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:16.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:16.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:16.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:17.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:15:18.853 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1464.125/1500.0
2026-01-21T23:15:19.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:19.986 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:19.986 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:19.986 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:20.883 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1462.095/1500.0
2026-01-21T23:15:22.913 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1460.065/1500.0
2026-01-21T23:15:22.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:23.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:23.010 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:23.010 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:24.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1458.034/1500.0
2026-01-21T23:15:26.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:26.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:26.014 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:26.014 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:26.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1456.005/1500.0
2026-01-21T23:15:27.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:15:29.005 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1453.973/1500.0
2026-01-21T23:15:29.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:29.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:29.033 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:29.033 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:31.035 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1451.943/1500.0
2026-01-21T23:15:32.036 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:32.040 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:32.040 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:32.040 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:33.066 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1449.913/1500.0
2026-01-21T23:15:35.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:35.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:15:35.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:35.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:15:35.096 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1447.884/1500.0
2026-01-21T23:15:37.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1445.852/1500.0
2026-01-21T23:15:37.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:15:38.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:38.063 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:15:38.064 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:38.064 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:39.157 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1443.821/1500.0
2026-01-21T23:15:41.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:41.067 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:41.067 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:41.067 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:41.187 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1441.791/1500.0
2026-01-21T23:15:43.218 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1439.76/1500.0
2026-01-21T23:15:44.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:44.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:44.091 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:44.091 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:45.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1437.73/1500.0
2026-01-21T23:15:47.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:47.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:47.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:47.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:47.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1435.7/1500.0
2026-01-21T23:15:47.614 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:15:47.631 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:14:54.884535
2026-01-21T23:15:47.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:14:54.884535
2026-01-21T23:15:47.631 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:15:47.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:15:47.631 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:15:47.631 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:15:47&start_after=2026-01-20T21:15:47&end_after=2026-01-21T21:15:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:15:47.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:15:47.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:15:47.783 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:15:47.783 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:15:47.783 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:15:47.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:15:47.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:15:47.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1748.216068
2026-01-21T23:15:47.783 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:15:49.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1433.621/1500.0
2026-01-21T23:15:50.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:50.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:50.117 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:50.117 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:51.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1431.601/1500.0
2026-01-21T23:15:53.119 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:53.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:53.132 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:53.132 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:53.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1429.571/1500.0
2026-01-21T23:15:55.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1427.54/1500.0
2026-01-21T23:15:56.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:56.136 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:56.136 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:56.136 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:56.793 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:15:57.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1425.51/1500.0
2026-01-21T23:15:59.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:15:59.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:15:59.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:15:59.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:15:59.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1423.481/1500.0
2026-01-21T23:16:01.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1421.449/1500.0
2026-01-21T23:16:02.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:02.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:02.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:02.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:03.559 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1419.419/1500.0
2026-01-21T23:16:05.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:05.180 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:05.180 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:05.180 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:05.590 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1417.388/1500.0
2026-01-21T23:16:06.803 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:16:07.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1415.358/1500.0
2026-01-21T23:16:08.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:08.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:08.200 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:08.200 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:09.651 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1413.327/1500.0
2026-01-21T23:16:11.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:11.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:11.220 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:11.220 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:11.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1411.297/1500.0
2026-01-21T23:16:13.712 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1409.267/1500.0
2026-01-21T23:16:14.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:14.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:14.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:14.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:15.742 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1407.236/1500.0
2026-01-21T23:16:16.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:16:17.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:17.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:17.241 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:17.241 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:17.772 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1405.206/1500.0
2026-01-21T23:16:19.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1403.175/1500.0
2026-01-21T23:16:20.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:20.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:20.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:20.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:21.833 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1401.145/1500.0
2026-01-21T23:16:23.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:23.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:23.261 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:23.261 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:23.864 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1399.116/1500.0
2026-01-21T23:16:25.894 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1397.084/1500.0
2026-01-21T23:16:26.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:26.283 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:26.283 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:26.283 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:26.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:16:27.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1395.053/1500.0
2026-01-21T23:16:29.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:29.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:29.296 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:29.296 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:29.955 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1393.025/1500.0
2026-01-21T23:16:31.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1390.993/1500.0
2026-01-21T23:16:32.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:32.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:32.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:32.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:34.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1388.962/1500.0
2026-01-21T23:16:35.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:35.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:35.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:35.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:36.046 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1386.932/1500.0
2026-01-21T23:16:36.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:16:38.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1384.901/1500.0
2026-01-21T23:16:38.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:38.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:38.306 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:38.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:40.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1382.87/1500.0
2026-01-21T23:16:41.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:41.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:41.328 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:41.328 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:42.138 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1380.84/1500.0
2026-01-21T23:16:44.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1378.81/1500.0
2026-01-21T23:16:44.331 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:44.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:44.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:44.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:46.199 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1376.78/1500.0
2026-01-21T23:16:46.843 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:16:46.859 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:15:55.094964
2026-01-21T23:16:46.860 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:15:55.094964
2026-01-21T23:16:46.860 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:16:46.860 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:16:46.860 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:16:46.860 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:16:46&start_after=2026-01-20T21:16:46&end_after=2026-01-21T21:16:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:16:46.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.979 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.985 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.986 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:16:46.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:16:46.993 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:16:46.993 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:16:46.993 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:16:46.993 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:16:46.994 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:16:46.994 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1689.005944
2026-01-21T23:16:46.994 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:16:47.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:47.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:47.358 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:47.358 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:48.229 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1374.749/1500.0
2026-01-21T23:16:50.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1372.719/1500.0
2026-01-21T23:16:50.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:50.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:50.360 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:50.360 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:52.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1370.688/1500.0
2026-01-21T23:16:53.363 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:53.384 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:53.384 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:53.384 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:54.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1368.658/1500.0
2026-01-21T23:16:56.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:16:56.351 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1366.627/1500.0
2026-01-21T23:16:56.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:56.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:16:56.385 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:56.386 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:16:58.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1364.597/1500.0
2026-01-21T23:16:59.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:16:59.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:16:59.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:16:59.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:17:00.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1362.567/1500.0
2026-01-21T23:17:02.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:02.428 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:17:02.428 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:02.428 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:02.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1360.536/1500.0
2026-01-21T23:17:04.472 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1358.506/1500.0
2026-01-21T23:17:05.431 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:05.432 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:05.432 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:05.432 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:06.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:17:06.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1356.477/1500.0
2026-01-21T23:17:08.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:08.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:08.434 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:08.434 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:08.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1354.445/1500.0
2026-01-21T23:17:10.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1352.377/1500.0
2026-01-21T23:17:11.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:11.458 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:11.458 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:11.458 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:12.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1350.346/1500.0
2026-01-21T23:17:14.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:14.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:14.461 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:14.461 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:14.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1348.317/1500.0
2026-01-21T23:17:16.021 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:17:16.692 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1346.286/1500.0
2026-01-21T23:17:17.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:17.483 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:17.483 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:17.483 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:18.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1344.257/1500.0
2026-01-21T23:17:20.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:20.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:20.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:20.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:20.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1342.225/1500.0
2026-01-21T23:17:22.784 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1340.194/1500.0
2026-01-21T23:17:23.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:23.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:23.531 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:23.531 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:24.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1338.164/1500.0
2026-01-21T23:17:26.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:17:26.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:26.535 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:26.535 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:26.535 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:26.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1336.133/1500.0
2026-01-21T23:17:28.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1334.105/1500.0
2026-01-21T23:17:29.538 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:29.559 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:29.559 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:29.559 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:30.905 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1332.073/1500.0
2026-01-21T23:17:32.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:32.563 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:32.563 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:32.563 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:32.936 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1330.042/1500.0
2026-01-21T23:17:34.966 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1328.013/1500.0
2026-01-21T23:17:35.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:35.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:35.586 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:35.586 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:36.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:17:36.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1325.981/1500.0
2026-01-21T23:17:38.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:38.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:38.611 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:38.611 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:39.027 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1323.952/1500.0
2026-01-21T23:17:41.058 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1321.921/1500.0
2026-01-21T23:17:41.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:41.635 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:41.635 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:41.635 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:43.088 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1319.89/1500.0
2026-01-21T23:17:44.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:44.639 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:44.639 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:44.639 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:45.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1317.861/1500.0
2026-01-21T23:17:46.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:17:46.039 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:16:55.295997
2026-01-21T23:17:46.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:16:55.295997
2026-01-21T23:17:46.039 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:17:46.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:17:46.039 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:17:46.039 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:17:46&start_after=2026-01-20T21:17:46&end_after=2026-01-21T21:17:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:17:46.184 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.185 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:17:46.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:17:46.200 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:17:46.200 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:17:46.200 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:17:46.200 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:17:46.200 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:17:46.200 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1629.799063
2026-01-21T23:17:46.200 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:17:47.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1315.829/1500.0
2026-01-21T23:17:47.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:47.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:47.663 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:47.663 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:49.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1313.799/1500.0
2026-01-21T23:17:50.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:50.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:50.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:50.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:51.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1311.769/1500.0
2026-01-21T23:17:53.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1309.74/1500.0
2026-01-21T23:17:53.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:53.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:17:53.687 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:53.687 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:17:55.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:17:55.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1307.708/1500.0
2026-01-21T23:17:56.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:56.707 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:17:56.707 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:56.707 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:17:57.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1305.679/1500.0
2026-01-21T23:17:59.369 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1303.609/1500.0
2026-01-21T23:17:59.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:17:59.735 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:17:59.735 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:17:59.735 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:01.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1301.579/1500.0
2026-01-21T23:18:02.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:02.739 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:02.739 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:02.739 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:03.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1299.549/1500.0
2026-01-21T23:18:05.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:18:05.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1297.518/1500.0
2026-01-21T23:18:05.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:05.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:05.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:05.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:07.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1295.487/1500.0
2026-01-21T23:18:08.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:08.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:08.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:08.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:09.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1293.457/1500.0
2026-01-21T23:18:11.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1291.427/1500.0
2026-01-21T23:18:11.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:11.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:11.785 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:11.785 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:13.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1289.396/1500.0
2026-01-21T23:18:14.788 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:14.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:14.808 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:14.808 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:15.227 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:18:15.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1287.366/1500.0
2026-01-21T23:18:17.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1285.335/1500.0
2026-01-21T23:18:17.811 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:17.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:17.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:17.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:19.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1283.305/1500.0
2026-01-21T23:18:20.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:20.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:20.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:20.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:21.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1281.274/1500.0
2026-01-21T23:18:23.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1279.245/1500.0
2026-01-21T23:18:23.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:23.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:23.857 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:23.857 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:25.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:18:25.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1277.215/1500.0
2026-01-21T23:18:26.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:26.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:26.861 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:26.861 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:27.832 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1275.183/1500.0
2026-01-21T23:18:29.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:29.863 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1273.115/1500.0
2026-01-21T23:18:29.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:29.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:29.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:31.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1271.085/1500.0
2026-01-21T23:18:32.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:32.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:32.902 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:32.902 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:33.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1269.056/1500.0
2026-01-21T23:18:35.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:18:35.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:35.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:35.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:35.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:35.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1267.025/1500.0
2026-01-21T23:18:37.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1264.994/1500.0
2026-01-21T23:18:38.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:38.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:38.928 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:38.929 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:40.015 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1262.963/1500.0
2026-01-21T23:18:41.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:41.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:41.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:41.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:42.045 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1260.933/1500.0
2026-01-21T23:18:44.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1258.902/1500.0
2026-01-21T23:18:44.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:44.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:44.953 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:44.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:45.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:18:45.276 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:17:55.502388
2026-01-21T23:18:45.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:17:55.502388
2026-01-21T23:18:45.276 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:18:45.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:18:45.276 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:18:45.276 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:18:45&start_after=2026-01-20T21:18:45&end_after=2026-01-21T21:18:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:18:45.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.396 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:18:45.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:18:45.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:18:45.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:18:45.408 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:18:45.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:18:45.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:18:45.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1570.591511
2026-01-21T23:18:45.408 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:18:46.106 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1256.872/1500.0
2026-01-21T23:18:47.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:47.975 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:47.975 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:47.975 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:48.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1254.841/1500.0
2026-01-21T23:18:50.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1252.811/1500.0
2026-01-21T23:18:50.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:51.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:51.000 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:51.000 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:52.197 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1250.781/1500.0
2026-01-21T23:18:54.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:54.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:54.024 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:54.024 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:54.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1248.75/1500.0
2026-01-21T23:18:54.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:18:56.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1246.72/1500.0
2026-01-21T23:18:57.027 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:18:57.028 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:18:57.028 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:18:57.028 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:18:58.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1244.689/1500.0
2026-01-21T23:19:00.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:00.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:00.049 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:00.049 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:00.319 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1242.659/1500.0
2026-01-21T23:19:02.349 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1240.628/1500.0
2026-01-21T23:19:03.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:03.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:03.051 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:03.051 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:04.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1238.598/1500.0
2026-01-21T23:19:04.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:19:06.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:06.071 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:06.071 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:06.071 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:06.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1236.569/1500.0
2026-01-21T23:19:08.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1234.538/1500.0
2026-01-21T23:19:09.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:09.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:19:09.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:09.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:19:10.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1232.508/1500.0
2026-01-21T23:19:12.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:12.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T23:19:12.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:12.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:19:12.502 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1230.476/1500.0
2026-01-21T23:19:14.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:19:14.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1228.446/1500.0
2026-01-21T23:19:15.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:15.118 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:19:15.118 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:15.118 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:16.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1226.416/1500.0
2026-01-21T23:19:18.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:18.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:18.142 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:18.142 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:18.593 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1224.385/1500.0
2026-01-21T23:19:20.623 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1222.356/1500.0
2026-01-21T23:19:21.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:21.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:21.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:21.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:22.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1220.324/1500.0
2026-01-21T23:19:24.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:24.168 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:24.168 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:24.168 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:24.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:19:24.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1218.294/1500.0
2026-01-21T23:19:26.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1216.264/1500.0
2026-01-21T23:19:27.170 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:27.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:27.186 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:27.186 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:28.745 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1214.233/1500.0
2026-01-21T23:19:30.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:30.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:30.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:30.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:30.775 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1212.204/1500.0
2026-01-21T23:19:32.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1210.172/1500.0
2026-01-21T23:19:33.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:33.214 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:33.214 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:33.214 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:34.453 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:19:34.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1208.142/1500.0
2026-01-21T23:19:36.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:36.236 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:19:36.236 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:36.236 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:19:36.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1206.074/1500.0
2026-01-21T23:19:38.935 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1204.045/1500.0
2026-01-21T23:19:39.237 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:39.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:19:39.238 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:39.238 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:40.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1202.013/1500.0
2026-01-21T23:19:42.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:42.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:42.262 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:42.262 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:42.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1199.982/1500.0
2026-01-21T23:19:44.464 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:19:44.484 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:18:55.701809
2026-01-21T23:19:44.484 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:18:55.701809
2026-01-21T23:19:44.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:19:44.484 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:19:44.484 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:19:44.484 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:19:44&start_after=2026-01-20T21:19:44&end_after=2026-01-21T21:19:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:19:44.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.608 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.609 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.613 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.613 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.616 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.617 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.619 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.620 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.621 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:19:44.623 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1511.376036
2026-01-21T23:19:44.623 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:19:45.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1197.953/1500.0
2026-01-21T23:19:45.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:45.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:45.266 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:45.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:47.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1195.921/1500.0
2026-01-21T23:19:48.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:48.287 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:48.287 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:48.287 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:49.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1193.891/1500.0
2026-01-21T23:19:51.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1191.861/1500.0
2026-01-21T23:19:51.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:51.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:51.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:51.290 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:53.148 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1189.83/1500.0
2026-01-21T23:19:53.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:19:54.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:54.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:54.310 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:54.310 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:55.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1187.801/1500.0
2026-01-21T23:19:57.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1185.771/1500.0
2026-01-21T23:19:57.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:19:57.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:19:57.313 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:19:57.313 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:19:59.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1183.741/1500.0
2026-01-21T23:20:00.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:00.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:00.337 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:00.337 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:01.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1181.709/1500.0
2026-01-21T23:20:03.300 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1179.678/1500.0
2026-01-21T23:20:03.340 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:03.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:03.357 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:03.357 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:03.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:20:05.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1177.648/1500.0
2026-01-21T23:20:06.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:06.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:06.361 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:06.361 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:07.361 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1175.617/1500.0
2026-01-21T23:20:09.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:09.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:09.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:09.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:09.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1173.587/1500.0
2026-01-21T23:20:11.422 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1171.556/1500.0
2026-01-21T23:20:12.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:12.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:20:12.389 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:12.389 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:20:13.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1169.526/1500.0
2026-01-21T23:20:13.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:20:15.392 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:15.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:20:15.393 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:15.393 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:15.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1167.496/1500.0
2026-01-21T23:20:17.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1165.465/1500.0
2026-01-21T23:20:18.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:18.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:18.413 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:18.413 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:19.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1163.436/1500.0
2026-01-21T23:20:21.416 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:21.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:21.437 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:21.437 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:21.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1161.404/1500.0
2026-01-21T23:20:23.604 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1159.374/1500.0
2026-01-21T23:20:23.659 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:20:24.440 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:24.463 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:24.463 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:24.463 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:25.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1157.343/1500.0
2026-01-21T23:20:27.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:27.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:27.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:27.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:27.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1155.313/1500.0
2026-01-21T23:20:29.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1153.283/1500.0
2026-01-21T23:20:30.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:30.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:30.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:30.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:31.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1151.252/1500.0
2026-01-21T23:20:33.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:33.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:33.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:33.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:33.668 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:20:33.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1149.222/1500.0
2026-01-21T23:20:35.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1147.193/1500.0
2026-01-21T23:20:36.500 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:36.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:20:36.517 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:36.517 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:20:37.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1145.161/1500.0
2026-01-21T23:20:39.520 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:39.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0009999999999763531
2026-01-21T23:20:39.537 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:39.537 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:20:39.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1143.13/1500.0
2026-01-21T23:20:41.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1141.1/1500.0
2026-01-21T23:20:42.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:42.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:20:42.556 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:42.556 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:43.678 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:20:43.697 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:19:55.909300
2026-01-21T23:20:43.697 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:19:55.909300
2026-01-21T23:20:43.697 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:20:43.697 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:20:43.697 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:20:43.697 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:20:43&start_after=2026-01-20T21:20:43&end_after=2026-01-21T21:20:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:20:43.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.849 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:20:43.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:20:43.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:20:43.851 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:20:43.851 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:20:43.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:20:43.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:20:43.852 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1452.147988
2026-01-21T23:20:43.852 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:20:43.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1139.071/1500.0
2026-01-21T23:20:45.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:45.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:20:45.558 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:45.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:20:45.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1137.04/1500.0
2026-01-21T23:20:47.969 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1135.009/1500.0
2026-01-21T23:20:48.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:48.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:20:48.580 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:48.580 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:50.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1132.978/1500.0
2026-01-21T23:20:51.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:51.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:51.582 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:51.582 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:52.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1130.948/1500.0
2026-01-21T23:20:52.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:20:54.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1128.881/1500.0
2026-01-21T23:20:54.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:54.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:20:54.604 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:54.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:20:56.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1126.851/1500.0
2026-01-21T23:20:57.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:20:57.623 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:20:57.623 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:20:57.623 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:20:58.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1124.819/1500.0
2026-01-21T23:21:00.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1122.789/1500.0
2026-01-21T23:21:00.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:00.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:21:00.642 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:00.642 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:02.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1120.758/1500.0
2026-01-21T23:21:02.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:21:03.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:03.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:03.646 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:03.646 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:04.250 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1118.728/1500.0
2026-01-21T23:21:06.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1116.697/1500.0
2026-01-21T23:21:06.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:06.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:06.668 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:06.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:08.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1114.667/1500.0
2026-01-21T23:21:09.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:09.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:09.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:09.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:10.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1112.637/1500.0
2026-01-21T23:21:12.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1110.606/1500.0
2026-01-21T23:21:12.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:12.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:12.693 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:12.693 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:12.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:21:14.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1108.577/1500.0
2026-01-21T23:21:15.696 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:15.715 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:15.715 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:15.715 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:16.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1106.545/1500.0
2026-01-21T23:21:18.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1104.515/1500.0
2026-01-21T23:21:18.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:18.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:18.736 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:18.736 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:20.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1102.485/1500.0
2026-01-21T23:21:21.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:21.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:21.738 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:21.738 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:22.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1100.455/1500.0
2026-01-21T23:21:22.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:21:24.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1098.425/1500.0
2026-01-21T23:21:24.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:24.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:21:24.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:24.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:21:26.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1096.395/1500.0
2026-01-21T23:21:27.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:27.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:21:27.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:27.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:28.615 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1094.363/1500.0
2026-01-21T23:21:30.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1092.333/1500.0
2026-01-21T23:21:30.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:30.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:30.787 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:30.787 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:32.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1090.302/1500.0
2026-01-21T23:21:32.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:21:33.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:33.811 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:21:33.811 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:33.811 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:21:34.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1088.273/1500.0
2026-01-21T23:21:36.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1086.241/1500.0
2026-01-21T23:21:36.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:36.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:21:36.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:36.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:38.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1084.211/1500.0
2026-01-21T23:21:39.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:39.836 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:21:39.836 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:39.836 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:21:40.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1082.181/1500.0
2026-01-21T23:21:42.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1080.151/1500.0
2026-01-21T23:21:42.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:42.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T23:21:42.859 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:42.859 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:21:42.909 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:21:42.910 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:20:56.108570
2026-01-21T23:21:42.910 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:20:56.108570
2026-01-21T23:21:42.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:21:42.910 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:21:42.910 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:21:42.910 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:21:42&start_after=2026-01-20T21:21:42&end_after=2026-01-21T21:21:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:21:43.143 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.154 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.155 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.156 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.157 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:21:43.159 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:21:43.159 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:21:43.159 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:21:43.160 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:21:43.160 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:21:43.160 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:21:43.160 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1392.839852
2026-01-21T23:21:43.160 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:21:44.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1078.121/1500.0
2026-01-21T23:21:45.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:45.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:21:45.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:45.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:46.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1076.089/1500.0
2026-01-21T23:21:48.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:48.880 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:48.880 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:48.880 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:48.920 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1074.06/1500.0
2026-01-21T23:21:50.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1072.029/1500.0
2026-01-21T23:21:51.883 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:51.900 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:51.900 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:51.900 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:52.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:21:52.981 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1069.998/1500.0
2026-01-21T23:21:54.903 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:54.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:54.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:54.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:55.011 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1067.967/1500.0
2026-01-21T23:21:57.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1065.937/1500.0
2026-01-21T23:21:57.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:21:57.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:21:57.922 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:21:57.922 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:21:59.072 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1063.906/1500.0
2026-01-21T23:22:00.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:00.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:00.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:00.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:01.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1061.876/1500.0
2026-01-21T23:22:02.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:22:03.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1059.845/1500.0
2026-01-21T23:22:03.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:03.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:03.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:03.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:05.163 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1057.815/1500.0
2026-01-21T23:22:06.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:06.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:06.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:06.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:07.194 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1055.784/1500.0
2026-01-21T23:22:09.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1053.755/1500.0
2026-01-21T23:22:09.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:09.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:09.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:09.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:11.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1051.724/1500.0
2026-01-21T23:22:12.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:22:12.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:12.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:12.997 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:12.997 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:13.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1049.693/1500.0
2026-01-21T23:22:15.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1047.626/1500.0
2026-01-21T23:22:16.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:16.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:16.014 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:16.014 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:17.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1045.597/1500.0
2026-01-21T23:22:19.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:19.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:19.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:19.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:19.414 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1043.564/1500.0
2026-01-21T23:22:21.444 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1041.534/1500.0
2026-01-21T23:22:22.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:22.043 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:22.043 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:22.043 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:22.198 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:22:23.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1039.504/1500.0
2026-01-21T23:22:25.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:25.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:25.047 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:25.047 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:25.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1037.473/1500.0
2026-01-21T23:22:27.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1035.445/1500.0
2026-01-21T23:22:28.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:28.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:28.069 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:28.069 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:29.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1033.412/1500.0
2026-01-21T23:22:31.072 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:31.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:31.073 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:31.073 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:31.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1031.382/1500.0
2026-01-21T23:22:32.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:22:33.627 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1029.351/1500.0
2026-01-21T23:22:34.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:34.095 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:34.095 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:34.095 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:35.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1027.321/1500.0
2026-01-21T23:22:37.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:37.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:37.147 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:37.147 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:37.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1025.253/1500.0
2026-01-21T23:22:39.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1023.185/1500.0
2026-01-21T23:22:40.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:40.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:40.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:40.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:41.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1021.117/1500.0
2026-01-21T23:22:42.218 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:22:42.239 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:21:56.324964
2026-01-21T23:22:42.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:21:56.324964
2026-01-21T23:22:42.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:22:42.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:22:42.267 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:22:42.267 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:22:42&start_after=2026-01-20T21:22:42&end_after=2026-01-21T21:22:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:22:42.389 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.391 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.399 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:22:42.404 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:22:42.404 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:22:42.404 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:22:42.404 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:22:42.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:22:42.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:22:42.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1333.594908
2026-01-21T23:22:42.405 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:22:43.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:43.175 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:43.175 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:43.175 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:43.967 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1019.049/1500.0
2026-01-21T23:22:46.035 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1016.981/1500.0
2026-01-21T23:22:46.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:46.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:46.198 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:46.198 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:48.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1014.913/1500.0
2026-01-21T23:22:49.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:49.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:49.202 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:49.202 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:50.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1012.845/1500.0
2026-01-21T23:22:51.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:22:52.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:52.227 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:52.227 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:52.227 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:52.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1010.777/1500.0
2026-01-21T23:22:54.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1008.709/1500.0
2026-01-21T23:22:55.230 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:55.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:55.231 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:55.231 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:56.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1006.641/1500.0
2026-01-21T23:22:58.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:22:58.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:22:58.256 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:22:58.256 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:22:58.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1004.573/1500.0
2026-01-21T23:23:00.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1002.505/1500.0
2026-01-21T23:23:01.257 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:01.279 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:01.280 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:01.280 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:01.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:23:02.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1000.437/1500.0
2026-01-21T23:23:04.283 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:04.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:04.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:04.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:04.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 998.369/1500.0
2026-01-21T23:23:06.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 996.301/1500.0
2026-01-21T23:23:07.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:07.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:07.306 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:07.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:08.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 994.233/1500.0
2026-01-21T23:23:10.310 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:10.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:10.329 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:10.329 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:10.851 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 992.165/1500.0
2026-01-21T23:23:11.431 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:23:12.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 990.097/1500.0
2026-01-21T23:23:13.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:13.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:13.333 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:13.333 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:14.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 988.029/1500.0
2026-01-21T23:23:16.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:16.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:16.356 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:16.356 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:17.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 985.961/1500.0
2026-01-21T23:23:19.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 983.893/1500.0
2026-01-21T23:23:19.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:19.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:19.375 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:19.375 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:21.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 981.824/1500.0
2026-01-21T23:23:21.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:23:22.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:22.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:22.444 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:22.444 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:23.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 979.757/1500.0
2026-01-21T23:23:25.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 977.689/1500.0
2026-01-21T23:23:25.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:25.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:25.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:25.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:27.444 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 975.621/1500.0
2026-01-21T23:23:28.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:28.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:28.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:28.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:29.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 973.504/1500.0
2026-01-21T23:23:31.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:23:31.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:31.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:31.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:31.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:31.569 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 971.447/1500.0
2026-01-21T23:23:33.637 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 969.379/1500.0
2026-01-21T23:23:34.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:34.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:23:34.494 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:34.494 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:23:35.705 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 967.311/1500.0
2026-01-21T23:23:37.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:37.516 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:23:37.516 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:37.516 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:37.773 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 965.243/1500.0
2026-01-21T23:23:39.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 963.175/1500.0
2026-01-21T23:23:40.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:40.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:40.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:40.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:41.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:23:41.461 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:22:56.524968
2026-01-21T23:23:41.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:22:56.524968
2026-01-21T23:23:41.461 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:23:41.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:23:41.461 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:23:41.461 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:23:41&start_after=2026-01-20T21:23:41&end_after=2026-01-21T21:23:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:23:41.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.587 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.588 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:23:41.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:23:41.595 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:23:41.595 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:23:41.595 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:23:41.595 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:23:41.595 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:23:41.595 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1274.404327
2026-01-21T23:23:41.595 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:23:41.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 961.108/1500.0
2026-01-21T23:23:43.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:43.538 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:43.538 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:43.538 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:43.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 959.04/1500.0
2026-01-21T23:23:46.045 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 956.972/1500.0
2026-01-21T23:23:46.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:46.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:46.543 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:46.543 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:48.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 954.904/1500.0
2026-01-21T23:23:49.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:49.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:49.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:49.563 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:50.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 952.834/1500.0
2026-01-21T23:23:50.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:23:52.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 950.768/1500.0
2026-01-21T23:23:52.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:52.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:52.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:52.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:54.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 948.698/1500.0
2026-01-21T23:23:55.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:55.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:55.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:55.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:23:56.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 946.63/1500.0
2026-01-21T23:23:58.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 944.563/1500.0
2026-01-21T23:23:58.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:23:58.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:23:58.611 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:23:58.611 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:00.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 942.494/1500.0
2026-01-21T23:24:00.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:24:01.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:01.615 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:01.615 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:01.615 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:02.590 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 940.426/1500.0
2026-01-21T23:24:04.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:04.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:04.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:04.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:04.658 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 938.358/1500.0
2026-01-21T23:24:06.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 936.29/1500.0
2026-01-21T23:24:07.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:07.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:07.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:07.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:08.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 934.223/1500.0
2026-01-21T23:24:10.624 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:24:10.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:10.655 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:10.655 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:10.655 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:10.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 932.154/1500.0
2026-01-21T23:24:12.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 930.087/1500.0
2026-01-21T23:24:13.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:13.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:24:13.677 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:13.677 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:24:14.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 928.02/1500.0
2026-01-21T23:24:16.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:16.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:24:16.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:16.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:17.066 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 925.95/1500.0
2026-01-21T23:24:19.134 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 923.882/1500.0
2026-01-21T23:24:19.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:19.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:24:19.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:19.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:24:20.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:24:21.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 921.815/1500.0
2026-01-21T23:24:22.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:22.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:24:22.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:22.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:23.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 919.746/1500.0
2026-01-21T23:24:25.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 917.679/1500.0
2026-01-21T23:24:25.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:25.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:25.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:25.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:27.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 915.611/1500.0
2026-01-21T23:24:28.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:28.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:28.770 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:28.770 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:29.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 913.542/1500.0
2026-01-21T23:24:30.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:24:31.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 911.476/1500.0
2026-01-21T23:24:31.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:31.792 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:31.792 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:31.792 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:33.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 909.406/1500.0
2026-01-21T23:24:34.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:34.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:34.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:34.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:35.678 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 907.339/1500.0
2026-01-21T23:24:37.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 905.27/1500.0
2026-01-21T23:24:37.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:37.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:37.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:37.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:39.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 903.202/1500.0
2026-01-21T23:24:40.650 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:24:40.651 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:23:56.784766
2026-01-21T23:24:40.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:23:56.784766
2026-01-21T23:24:40.651 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:24:40.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:24:40.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:24:40.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:24:40&start_after=2026-01-20T21:24:40&end_after=2026-01-21T21:24:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:24:40.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:24:40.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:24:40.784 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:24:40.784 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:24:40.784 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:24:40.784 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:24:40.784 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:24:40.784 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1215.215494
2026-01-21T23:24:40.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:24:40.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:40.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:40.837 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:40.837 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:41.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 901.134/1500.0
2026-01-21T23:24:43.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:43.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:43.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:43.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:43.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 899.066/1500.0
2026-01-21T23:24:46.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 896.998/1500.0
2026-01-21T23:24:46.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:46.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:46.845 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:46.845 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:48.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 894.929/1500.0
2026-01-21T23:24:49.793 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:24:49.848 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:49.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:49.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:49.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:50.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 892.861/1500.0
2026-01-21T23:24:52.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 890.794/1500.0
2026-01-21T23:24:52.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:52.892 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:52.892 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:52.892 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:54.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 888.725/1500.0
2026-01-21T23:24:55.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:55.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:55.896 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:55.896 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:56.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 886.657/1500.0
2026-01-21T23:24:58.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 884.589/1500.0
2026-01-21T23:24:58.899 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:24:58.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:24:58.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:24:58.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:24:59.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:25:00.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 882.521/1500.0
2026-01-21T23:25:01.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:01.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:01.923 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:01.923 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:02.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 880.455/1500.0
2026-01-21T23:25:04.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 878.385/1500.0
2026-01-21T23:25:04.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:04.948 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:04.948 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:04.948 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:06.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 876.317/1500.0
2026-01-21T23:25:07.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:07.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:07.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:07.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:08.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 874.251/1500.0
2026-01-21T23:25:09.812 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:25:10.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 872.181/1500.0
2026-01-21T23:25:10.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:10.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:10.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:10.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:12.902 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 870.113/1500.0
2026-01-21T23:25:13.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:13.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:13.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:13.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:14.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 868.047/1500.0
2026-01-21T23:25:17.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:17.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:17.021 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:17.021 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:17.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 865.977/1500.0
2026-01-21T23:25:19.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 863.909/1500.0
2026-01-21T23:25:19.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:25:20.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:20.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:20.022 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:20.022 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:21.175 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 861.841/1500.0
2026-01-21T23:25:23.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:23.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:23.041 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:23.041 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:23.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 859.773/1500.0
2026-01-21T23:25:25.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 857.705/1500.0
2026-01-21T23:25:26.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:26.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:26.061 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:26.061 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:27.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 855.637/1500.0
2026-01-21T23:25:29.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:29.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:29.080 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:29.080 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:29.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 853.569/1500.0
2026-01-21T23:25:29.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:25:31.515 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 851.501/1500.0
2026-01-21T23:25:32.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:32.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:32.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:32.152 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:33.583 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 849.433/1500.0
2026-01-21T23:25:35.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:35.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:35.155 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:35.155 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:35.651 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 847.365/1500.0
2026-01-21T23:25:37.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 845.297/1500.0
2026-01-21T23:25:38.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:38.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:38.176 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:38.176 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:39.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 843.229/1500.0
2026-01-21T23:25:39.837 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:25:39.854 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:24:56.982952
2026-01-21T23:25:39.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:24:56.982952
2026-01-21T23:25:39.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:25:39.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:25:39.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:25:39.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:25:39&start_after=2026-01-20T21:25:39&end_after=2026-01-21T21:25:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:25:39.967 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.968 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.969 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.971 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.975 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.979 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.981 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:25:39.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:25:39.983 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:25:39.983 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:25:39.983 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:25:39.983 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:25:39.983 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:25:39.984 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1156.01598
2026-01-21T23:25:39.984 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:25:39.984052    Obs time: 2026-01-21 21:44:56
2026-01-21T23:25:39.984 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:16.015948
2026-01-21T23:25:39.984 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1156
2026-01-21T23:25:39.984 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:25:41.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:41.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:41.194 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:41.194 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:41.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 841.161/1500.0
2026-01-21T23:25:43.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 839.093/1500.0
2026-01-21T23:25:44.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:44.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:44.216 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:44.216 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:45.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 837.025/1500.0
2026-01-21T23:25:47.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:47.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:47.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:47.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:48.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 834.957/1500.0
2026-01-21T23:25:48.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:25:50.127 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 832.889/1500.0
2026-01-21T23:25:50.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:50.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:50.238 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:50.238 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:52.195 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 830.821/1500.0
2026-01-21T23:25:53.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:53.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:53.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:53.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:54.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 828.753/1500.0
2026-01-21T23:25:56.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:56.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:56.266 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:56.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:25:56.331 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 826.685/1500.0
2026-01-21T23:25:58.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 824.617/1500.0
2026-01-21T23:25:59.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:25:59.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:25:59.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:25:59.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:25:59.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:00.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 822.549/1500.0
2026-01-21T23:26:02.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:02.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:02.293 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:02.293 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:02.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 820.481/1500.0
2026-01-21T23:26:04.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 818.413/1500.0
2026-01-21T23:26:05.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:05.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:05.297 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:05.297 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:06.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 816.345/1500.0
2026-01-21T23:26:08.300 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:08.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:08.320 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:08.320 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:08.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 814.277/1500.0
2026-01-21T23:26:09.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:26:10.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 812.209/1500.0
2026-01-21T23:26:11.323 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:11.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:11.324 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:11.324 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:12.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 810.141/1500.0
2026-01-21T23:26:14.327 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:14.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:14.346 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:14.346 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:14.943 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 808.073/1500.0
2026-01-21T23:26:17.011 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 806.005/1500.0
2026-01-21T23:26:17.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:17.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:17.350 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:17.350 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:19.021 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:26:19.079 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 803.936/1500.0
2026-01-21T23:26:20.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:20.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:20.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:20.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:21.147 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 801.869/1500.0
2026-01-21T23:26:23.215 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 799.801/1500.0
2026-01-21T23:26:23.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:23.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:26:23.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:23.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:26:25.283 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 797.732/1500.0
2026-01-21T23:26:26.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:26.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:26:26.397 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:26.397 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:27.351 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 795.665/1500.0
2026-01-21T23:26:29.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:26:29.400 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:29.419 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 793.597/1500.0
2026-01-21T23:26:29.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:29.421 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:29.421 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:31.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 791.529/1500.0
2026-01-21T23:26:32.424 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:32.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:32.444 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:32.444 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:33.555 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 789.46/1500.0
2026-01-21T23:26:35.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:35.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:35.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:35.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:35.623 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 787.392/1500.0
2026-01-21T23:26:37.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 785.324/1500.0
2026-01-21T23:26:38.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:38.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:26:38.468 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:38.468 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:26:39.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:26:39.039 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:25:57.267266
2026-01-21T23:26:39.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:25:57.267266
2026-01-21T23:26:39.039 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:26:39.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:26:39.039 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:26:39.039 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:26:39&start_after=2026-01-20T21:26:39&end_after=2026-01-21T21:26:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:26:39.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.163 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.164 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.167 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.170 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.175 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.176 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:26:39.177 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1096.821109
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:26:39.178924    Obs time: 2026-01-21 21:44:56
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:16.821076
2026-01-21T23:26:39.178 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1096
2026-01-21T23:26:39.179 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:26:39.759 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 783.256/1500.0
2026-01-21T23:26:41.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:41.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:26:41.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:41.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:41.827 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 781.188/1500.0
2026-01-21T23:26:43.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 779.12/1500.0
2026-01-21T23:26:44.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:44.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:44.494 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:44.494 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:45.963 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 777.052/1500.0
2026-01-21T23:26:47.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:47.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:26:47.498 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:47.498 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:26:48.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 774.984/1500.0
2026-01-21T23:26:48.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:26:50.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 772.917/1500.0
2026-01-21T23:26:50.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:50.523 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:26:50.523 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:50.523 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:52.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 770.849/1500.0
2026-01-21T23:26:53.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:53.527 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:26:53.527 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:53.527 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:26:54.235 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 768.781/1500.0
2026-01-21T23:26:56.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 766.712/1500.0
2026-01-21T23:26:56.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:56.548 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:26:56.548 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:56.548 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:26:58.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:26:58.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 764.645/1500.0
2026-01-21T23:26:59.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:26:59.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:26:59.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:26:59.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:00.439 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 762.576/1500.0
2026-01-21T23:27:02.507 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 760.509/1500.0
2026-01-21T23:27:02.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:02.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:02.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:02.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:04.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 758.44/1500.0
2026-01-21T23:27:05.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:05.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:05.577 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:05.577 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:06.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 756.372/1500.0
2026-01-21T23:27:08.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:27:08.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:08.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:08.598 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:08.598 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:08.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 754.304/1500.0
2026-01-21T23:27:10.780 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 752.236/1500.0
2026-01-21T23:27:11.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:11.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:11.602 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:11.602 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:12.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 750.169/1500.0
2026-01-21T23:27:14.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:14.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:14.624 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:14.624 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:14.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 748.1/1500.0
2026-01-21T23:27:16.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 746.032/1500.0
2026-01-21T23:27:17.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:17.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:17.628 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:17.628 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:18.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:27:19.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 743.964/1500.0
2026-01-21T23:27:20.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:20.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:20.645 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:20.645 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:21.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 741.896/1500.0
2026-01-21T23:27:23.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 739.828/1500.0
2026-01-21T23:27:23.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:23.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:23.648 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:23.648 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:25.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 737.76/1500.0
2026-01-21T23:27:26.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:26.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:26.672 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:26.672 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:27.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 735.692/1500.0
2026-01-21T23:27:28.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:27:29.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 733.624/1500.0
2026-01-21T23:27:29.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:29.674 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:29.674 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:29.674 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:31.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 731.557/1500.0
2026-01-21T23:27:32.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:32.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:32.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:32.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:33.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 729.488/1500.0
2026-01-21T23:27:35.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 727.42/1500.0
2026-01-21T23:27:35.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:35.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:35.693 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:35.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:37.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 725.352/1500.0
2026-01-21T23:27:38.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:27:38.249 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:26:57.467229
2026-01-21T23:27:38.249 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:26:57.467229
2026-01-21T23:27:38.249 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:27:38.249 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:27:38.249 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:27:38.249 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:27:38&start_after=2026-01-20T21:27:38&end_after=2026-01-21T21:27:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:27:38.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.375 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.379 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.381 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:27:38.388 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1037.610289
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:27:38.389744    Obs time: 2026-01-21 21:44:56
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:17.610256
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1037
2026-01-21T23:27:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:27:38.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:38.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:27:38.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:38.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:27:39.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 723.284/1500.0
2026-01-21T23:27:41.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:41.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:27:41.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:41.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:41.800 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 721.217/1500.0
2026-01-21T23:27:43.868 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 719.149/1500.0
2026-01-21T23:27:44.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:44.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:44.727 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:44.727 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:45.936 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 717.081/1500.0
2026-01-21T23:27:47.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:27:47.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:47.732 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:47.732 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:47.732 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:48.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 715.013/1500.0
2026-01-21T23:27:50.072 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 712.945/1500.0
2026-01-21T23:27:50.735 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:50.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:50.752 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:50.752 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:52.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 710.876/1500.0
2026-01-21T23:27:53.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:53.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:53.754 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:53.754 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:54.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 708.809/1500.0
2026-01-21T23:27:56.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 706.741/1500.0
2026-01-21T23:27:56.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:56.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:56.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:56.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:27:57.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:27:58.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 704.673/1500.0
2026-01-21T23:27:59.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:27:59.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:27:59.782 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:27:59.782 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:00.412 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 702.605/1500.0
2026-01-21T23:28:02.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 700.537/1500.0
2026-01-21T23:28:02.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:02.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:02.805 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:02.805 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:04.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 698.505/1500.0
2026-01-21T23:28:05.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:05.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:28:05.807 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:05.807 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:28:06.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 696.437/1500.0
2026-01-21T23:28:07.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:28:08.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 694.369/1500.0
2026-01-21T23:28:08.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:08.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:28:08.829 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:08.829 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:10.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 692.301/1500.0
2026-01-21T23:28:11.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:11.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:28:11.831 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:11.831 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:28:12.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 690.233/1500.0
2026-01-21T23:28:14.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:14.851 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 688.165/1500.0
2026-01-21T23:28:14.852 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:28:14.852 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:14.852 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:16.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 686.097/1500.0
2026-01-21T23:28:17.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:28:17.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:17.854 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:17.854 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:17.854 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:18.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 684.029/1500.0
2026-01-21T23:28:20.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:20.875 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:20.875 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:20.875 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:21.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 681.961/1500.0
2026-01-21T23:28:23.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 679.893/1500.0
2026-01-21T23:28:23.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:23.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:23.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:23.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:25.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 677.825/1500.0
2026-01-21T23:28:26.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:26.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:26.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:26.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:27.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 675.757/1500.0
2026-01-21T23:28:27.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:28:29.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 673.689/1500.0
2026-01-21T23:28:29.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:29.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:29.905 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:29.905 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:31.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 671.621/1500.0
2026-01-21T23:28:32.908 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:32.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:32.928 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:32.928 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:33.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 669.553/1500.0
2026-01-21T23:28:35.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 667.485/1500.0
2026-01-21T23:28:35.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:35.951 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:28:35.951 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:35.951 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:28:37.444 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:28:37.463 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:27:57.743531
2026-01-21T23:28:37.463 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:27:57.743531
2026-01-21T23:28:37.463 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:28:37.463 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:28:37.463 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:28:37.463 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:28:37&start_after=2026-01-20T21:28:37&end_after=2026-01-21T21:28:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:28:37.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.586 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.587 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.588 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:28:37.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 978.403234
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:28:37.596798    Obs time: 2026-01-21 21:44:56
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:18.403202
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  978
2026-01-21T23:28:37.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:28:37.599 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 665.417/1500.0
2026-01-21T23:28:38.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:38.975 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:28:38.975 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:38.975 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:39.667 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 663.349/1500.0
2026-01-21T23:28:41.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 661.281/1500.0
2026-01-21T23:28:41.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:41.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:41.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:41.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:43.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 659.25/1500.0
2026-01-21T23:28:44.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:45.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:45.001 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:45.001 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:45.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 657.22/1500.0
2026-01-21T23:28:46.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:28:47.789 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 655.189/1500.0
2026-01-21T23:28:48.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:48.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:48.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:48.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:49.857 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 653.16/1500.0
2026-01-21T23:28:51.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:51.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:51.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:51.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:51.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 651.09/1500.0
2026-01-21T23:28:53.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 649.022/1500.0
2026-01-21T23:28:54.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:54.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:54.029 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:54.029 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:56.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 646.954/1500.0
2026-01-21T23:28:56.613 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:28:57.031 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:28:57.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:28:57.045 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:28:57.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:28:58.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 644.886/1500.0
2026-01-21T23:29:00.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:00.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:00.050 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:00.050 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:00.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 642.817/1500.0
2026-01-21T23:29:02.266 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 640.749/1500.0
2026-01-21T23:29:03.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:03.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:03.069 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:03.069 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:04.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 638.681/1500.0
2026-01-21T23:29:06.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:06.071 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:06.071 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:06.071 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:06.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 636.613/1500.0
2026-01-21T23:29:06.622 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:29:08.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 634.545/1500.0
2026-01-21T23:29:09.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:09.090 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:09.090 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:09.090 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:10.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 632.476/1500.0
2026-01-21T23:29:12.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:12.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:12.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:12.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:12.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 630.408/1500.0
2026-01-21T23:29:14.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 628.341/1500.0
2026-01-21T23:29:15.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:15.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:15.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:15.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:16.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:29:16.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 626.272/1500.0
2026-01-21T23:29:18.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:18.118 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:18.118 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:18.118 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:18.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 624.204/1500.0
2026-01-21T23:29:20.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 622.135/1500.0
2026-01-21T23:29:21.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:21.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:21.137 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:21.137 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:22.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 620.067/1500.0
2026-01-21T23:29:24.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:24.139 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:24.139 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:24.139 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:25.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 617.999/1500.0
2026-01-21T23:29:26.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:29:27.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 615.932/1500.0
2026-01-21T23:29:27.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:27.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:27.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:27.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:29.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 613.862/1500.0
2026-01-21T23:29:30.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:30.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:30.166 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:30.166 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:31.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 611.794/1500.0
2026-01-21T23:29:33.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:33.184 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:33.184 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:33.184 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:33.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 609.726/1500.0
2026-01-21T23:29:35.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 607.658/1500.0
2026-01-21T23:29:36.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:36.203 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:36.203 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:36.203 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:36.648 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:29:36.649 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:28:57.942226
2026-01-21T23:29:36.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:28:57.942226
2026-01-21T23:29:36.649 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:29:36.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:29:36.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:29:36.649 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:29:36&start_after=2026-01-20T21:29:36&end_after=2026-01-21T21:29:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:29:36.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.789 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:29:36.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 919.203694
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:29:36.796337    Obs time: 2026-01-21 21:44:56
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:19.203663
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  919
2026-01-21T23:29:36.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:29:37.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 605.59/1500.0
2026-01-21T23:29:39.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:39.226 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:39.226 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:39.226 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:39.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 603.521/1500.0
2026-01-21T23:29:41.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 601.453/1500.0
2026-01-21T23:29:42.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:42.230 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:29:42.238 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:42.238 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:29:43.631 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 599.385/1500.0
2026-01-21T23:29:45.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:45.263 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:29:45.263 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:45.263 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:45.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 597.317/1500.0
2026-01-21T23:29:45.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:29:47.767 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 595.249/1500.0
2026-01-21T23:29:48.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:48.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:29:48.266 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:48.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:49.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 593.18/1500.0
2026-01-21T23:29:51.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:51.287 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:29:51.287 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:51.287 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:29:51.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 591.112/1500.0
2026-01-21T23:29:53.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 589.045/1500.0
2026-01-21T23:29:54.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:54.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:29:54.291 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:54.291 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:29:55.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:29:56.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.976/1500.0
2026-01-21T23:29:57.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:29:57.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:29:57.313 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:29:57.313 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:29:58.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.909/1500.0
2026-01-21T23:30:00.177 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.838/1500.0
2026-01-21T23:30:00.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:00.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:30:00.317 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:00.317 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:02.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.772/1500.0
2026-01-21T23:30:03.320 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:03.340 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:03.340 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:03.340 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:04.313 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.703/1500.0
2026-01-21T23:30:05.822 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:30:06.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:06.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:06.341 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:06.342 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:06.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 576.635/1500.0
2026-01-21T23:30:08.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 574.568/1500.0
2026-01-21T23:30:09.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:09.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:09.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:09.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:10.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 572.498/1500.0
2026-01-21T23:30:12.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:12.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:12.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:12.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:12.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 570.431/1500.0
2026-01-21T23:30:14.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 568.363/1500.0
2026-01-21T23:30:15.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:15.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:15.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:15.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:15.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:30:16.722 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 566.293/1500.0
2026-01-21T23:30:18.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:18.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:18.397 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:18.398 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:18.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 564.226/1500.0
2026-01-21T23:30:20.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 562.157/1500.0
2026-01-21T23:30:21.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:21.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:21.422 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:21.422 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:22.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 560.089/1500.0
2026-01-21T23:30:24.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:24.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:24.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:24.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:24.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 558.021/1500.0
2026-01-21T23:30:25.841 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:30:27.063 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 555.953/1500.0
2026-01-21T23:30:27.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:27.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:27.429 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:27.429 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:29.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 553.885/1500.0
2026-01-21T23:30:30.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:30.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:30.454 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:30.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:31.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 551.816/1500.0
2026-01-21T23:30:33.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.749/1500.0
2026-01-21T23:30:33.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:33.458 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:33.458 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:33.458 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:35.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.681/1500.0
2026-01-21T23:30:35.850 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:30:35.851 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:29:58.228773
2026-01-21T23:30:35.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:29:58.228773
2026-01-21T23:30:35.851 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:30:35.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:30:35.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:30:35.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:30:35&start_after=2026-01-20T21:30:35&end_after=2026-01-21T21:30:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:30:35.969 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.971 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.975 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.979 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.981 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:30:35.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:30:35.985 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:30:35.985 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:30:35.985 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:30:35.985 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:30:35.986 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:30:35.986 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 860.013961
2026-01-21T23:30:35.986 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:30:35.986070    Obs time: 2026-01-21 21:44:56
2026-01-21T23:30:35.986 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:20.013930
2026-01-21T23:30:35.986 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  860
2026-01-21T23:30:35.986 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:30:36.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:36.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:36.477 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:36.477 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:37.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.611/1500.0
2026-01-21T23:30:39.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.545/1500.0
2026-01-21T23:30:39.480 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:39.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:39.481 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:39.481 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:41.541 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.475/1500.0
2026-01-21T23:30:42.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:42.503 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:42.503 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:42.503 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:43.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 539.407/1500.0
2026-01-21T23:30:44.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:30:45.507 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:45.508 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:30:45.508 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:45.508 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:30:45.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 537.339/1500.0
2026-01-21T23:30:47.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 535.27/1500.0
2026-01-21T23:30:48.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:48.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:30:48.528 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:48.528 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:49.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 533.203/1500.0
2026-01-21T23:30:51.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:51.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:51.532 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:51.532 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:51.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 531.134/1500.0
2026-01-21T23:30:53.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 529.067/1500.0
2026-01-21T23:30:54.535 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:54.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:54.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:54.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:55.001 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:30:56.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 526.997/1500.0
2026-01-21T23:30:57.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:30:57.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:30:57.561 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:30:57.561 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:30:58.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 524.929/1500.0
2026-01-21T23:31:00.155 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 522.861/1500.0
2026-01-21T23:31:00.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:00.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:00.582 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:00.582 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:02.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 520.793/1500.0
2026-01-21T23:31:03.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:03.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:03.586 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:03.586 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:04.291 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 518.724/1500.0
2026-01-21T23:31:05.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:31:06.360 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 516.656/1500.0
2026-01-21T23:31:06.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:06.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:06.609 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:06.609 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:08.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 514.588/1500.0
2026-01-21T23:31:09.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:09.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:09.613 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:09.613 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:10.496 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 512.52/1500.0
2026-01-21T23:31:12.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 510.452/1500.0
2026-01-21T23:31:12.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:12.635 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:12.635 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:12.635 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:14.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 508.383/1500.0
2026-01-21T23:31:15.019 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:31:15.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:15.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:15.638 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:15.638 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:16.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 506.317/1500.0
2026-01-21T23:31:18.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:18.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:18.662 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:18.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:18.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 504.248/1500.0
2026-01-21T23:31:20.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 502.18/1500.0
2026-01-21T23:31:21.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:21.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:21.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:21.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:22.905 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 500.11/1500.0
2026-01-21T23:31:24.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:24.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:24.684 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:24.684 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:24.973 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 498.042/1500.0
2026-01-21T23:31:25.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:31:27.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 495.974/1500.0
2026-01-21T23:31:27.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:27.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:27.688 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:27.688 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:29.110 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 493.906/1500.0
2026-01-21T23:31:30.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:30.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:30.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:30.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:31.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 491.839/1500.0
2026-01-21T23:31:33.246 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 489.771/1500.0
2026-01-21T23:31:33.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:33.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:33.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:33.710 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:35.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:31:35.039 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:30:58.427167
2026-01-21T23:31:35.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:30:58.427167
2026-01-21T23:31:35.039 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:31:35.039 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:31:35.039 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:31:35.039 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:31:35&start_after=2026-01-20T21:31:35&end_after=2026-01-21T21:31:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:31:35.159 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.164 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.167 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.170 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.171 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:31:35.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:31:35.174 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 800.824819
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:31:35.175212    Obs time: 2026-01-21 21:44:56
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:20.824788
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  800
2026-01-21T23:31:35.175 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:31:35.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 487.701/1500.0
2026-01-21T23:31:36.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:36.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:36.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:36.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:37.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 485.633/1500.0
2026-01-21T23:31:39.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 483.565/1500.0
2026-01-21T23:31:39.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:39.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:39.738 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:39.738 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:41.519 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 481.497/1500.0
2026-01-21T23:31:42.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:42.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:42.760 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:42.760 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:43.587 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 479.429/1500.0
2026-01-21T23:31:44.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:31:45.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 477.361/1500.0
2026-01-21T23:31:45.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:45.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:45.777 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:45.777 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:47.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 475.292/1500.0
2026-01-21T23:31:48.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:48.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:48.781 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:48.781 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:49.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 473.224/1500.0
2026-01-21T23:31:51.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:51.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:51.805 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:51.805 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:51.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 471.155/1500.0
2026-01-21T23:31:53.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 469.089/1500.0
2026-01-21T23:31:54.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:31:54.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:54.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:54.809 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:54.809 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:55.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 467.02/1500.0
2026-01-21T23:31:57.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:31:57.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:31:57.835 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:31:57.835 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:31:58.066 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 464.952/1500.0
2026-01-21T23:32:00.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 462.883/1500.0
2026-01-21T23:32:00.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:00.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:32:00.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:00.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:32:02.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 460.814/1500.0
2026-01-21T23:32:03.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:03.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:32:03.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:03.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:04.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:32:04.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 458.746/1500.0
2026-01-21T23:32:06.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 456.678/1500.0
2026-01-21T23:32:06.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:06.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:06.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:06.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:08.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 454.61/1500.0
2026-01-21T23:32:09.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:09.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:09.868 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:09.868 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:10.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 452.541/1500.0
2026-01-21T23:32:12.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 450.473/1500.0
2026-01-21T23:32:12.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:12.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:12.872 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:12.872 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:14.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:32:14.611 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 448.405/1500.0
2026-01-21T23:32:15.875 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:15.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:15.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:15.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:16.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 446.337/1500.0
2026-01-21T23:32:18.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 444.269/1500.0
2026-01-21T23:32:18.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:18.916 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:18.916 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:18.916 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:20.815 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 442.201/1500.0
2026-01-21T23:32:21.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:21.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:21.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:21.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:22.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 440.133/1500.0
2026-01-21T23:32:24.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:32:24.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:24.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:32:24.922 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:24.922 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:32:24.952 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 438.065/1500.0
2026-01-21T23:32:27.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 435.997/1500.0
2026-01-21T23:32:27.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:27.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:32:27.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:27.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:29.088 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 433.929/1500.0
2026-01-21T23:32:30.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:30.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:30.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:30.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:31.157 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 431.861/1500.0
2026-01-21T23:32:33.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 429.793/1500.0
2026-01-21T23:32:33.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:33.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:33.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:33.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:34.229 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:32:34.230 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:31:58.699643
2026-01-21T23:32:34.230 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:31:58.699643
2026-01-21T23:32:34.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:32:34.230 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:32:34.230 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:32:34.230 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:32:34&start_after=2026-01-20T21:32:34&end_after=2026-01-21T21:32:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:32:34.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.368 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.369 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.369 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.377 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.383 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:32:34.388 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 741.610569
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:32:34.389462    Obs time: 2026-01-21 21:44:56
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:21.610538
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  741
2026-01-21T23:32:34.389 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:32:35.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 427.723/1500.0
2026-01-21T23:32:36.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:36.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:36.977 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:36.977 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:37.361 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 425.655/1500.0
2026-01-21T23:32:39.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 423.588/1500.0
2026-01-21T23:32:39.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:39.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:39.981 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:39.981 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:41.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 421.518/1500.0
2026-01-21T23:32:42.984 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:42.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:42.985 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:42.985 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:43.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:32:43.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 419.452/1500.0
2026-01-21T23:32:45.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 417.383/1500.0
2026-01-21T23:32:45.988 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:46.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:46.005 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:46.005 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:47.702 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 415.314/1500.0
2026-01-21T23:32:49.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:49.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:49.009 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:49.009 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:49.771 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 413.245/1500.0
2026-01-21T23:32:51.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 411.177/1500.0
2026-01-21T23:32:52.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:52.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:52.032 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:52.032 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:53.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:32:53.907 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 409.109/1500.0
2026-01-21T23:32:55.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:55.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:55.036 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:55.036 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:32:55.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 407.041/1500.0
2026-01-21T23:32:58.038 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:32:58.044 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.972/1500.0
2026-01-21T23:32:58.055 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:32:58.055 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:32:58.055 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:00.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 402.905/1500.0
2026-01-21T23:33:01.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:01.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:01.058 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:01.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:02.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 400.836/1500.0
2026-01-21T23:33:03.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:33:04.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:04.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:04.078 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:04.078 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:04.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 398.768/1500.0
2026-01-21T23:33:06.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 396.7/1500.0
2026-01-21T23:33:07.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:07.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:33:07.082 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:07.082 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:33:08.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 394.631/1500.0
2026-01-21T23:33:10.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:10.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:33:10.105 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:10.105 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:10.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 392.563/1500.0
2026-01-21T23:33:12.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 390.497/1500.0
2026-01-21T23:33:13.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:13.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:33:13.109 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:13.109 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:33:13.428 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:33:14.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 388.428/1500.0
2026-01-21T23:33:16.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:16.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:33:16.136 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:16.136 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:16.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 386.36/1500.0
2026-01-21T23:33:18.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 384.292/1500.0
2026-01-21T23:33:19.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:19.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:19.156 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:19.156 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:20.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 382.224/1500.0
2026-01-21T23:33:22.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:22.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:22.177 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:22.177 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:22.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 380.154/1500.0
2026-01-21T23:33:23.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:33:24.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 378.086/1500.0
2026-01-21T23:33:25.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:25.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:25.179 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:25.179 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:26.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 376.019/1500.0
2026-01-21T23:33:28.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:28.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:28.201 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:28.201 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:29.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.949/1500.0
2026-01-21T23:33:31.135 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.881/1500.0
2026-01-21T23:33:31.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:31.203 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:31.203 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:31.203 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:33.203 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 369.813/1500.0
2026-01-21T23:33:33.448 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:33:33.466 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:32:58.902577
2026-01-21T23:33:33.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:32:58.902577
2026-01-21T23:33:33.466 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:33:33.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:33:33.466 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:33:33.466 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:33:33&start_after=2026-01-20T21:33:33&end_after=2026-01-21T21:33:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:33:33.589 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.596 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.597 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.601 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.602 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:33:33.604 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 682.394166
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:33:33.605864    Obs time: 2026-01-21 21:44:56
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:22.394136
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  682
2026-01-21T23:33:33.605 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:33:34.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:34.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:34.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:34.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:35.271 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 367.744/1500.0
2026-01-21T23:33:37.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:37.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:33:37.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:37.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:33:37.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 365.676/1500.0
2026-01-21T23:33:39.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 363.609/1500.0
2026-01-21T23:33:40.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:40.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:33:40.229 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:40.230 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:41.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 361.54/1500.0
2026-01-21T23:33:42.615 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:33:43.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:43.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:43.232 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:43.232 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:43.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 359.473/1500.0
2026-01-21T23:33:45.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 357.405/1500.0
2026-01-21T23:33:46.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:46.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:46.250 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:46.250 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:47.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 355.335/1500.0
2026-01-21T23:33:49.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:49.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:49.254 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:49.254 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:49.749 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 353.267/1500.0
2026-01-21T23:33:51.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 351.199/1500.0
2026-01-21T23:33:52.257 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:52.275 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:52.275 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:52.275 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:52.622 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:33:53.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 349.13/1500.0
2026-01-21T23:33:55.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:55.279 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:55.279 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:55.279 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:55.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 347.1/1500.0
2026-01-21T23:33:57.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 345.069/1500.0
2026-01-21T23:33:58.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:33:58.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:33:58.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:33:58.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:33:59.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 343.039/1500.0
2026-01-21T23:34:01.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:01.310 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:01.310 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:01.310 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:01.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 341.009/1500.0
2026-01-21T23:34:02.630 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:34:04.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.98/1500.0
2026-01-21T23:34:04.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:04.335 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:04.335 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:04.335 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:06.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.949/1500.0
2026-01-21T23:34:07.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:07.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:07.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:07.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:08.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.917/1500.0
2026-01-21T23:34:10.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 332.849/1500.0
2026-01-21T23:34:10.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:10.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:10.360 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:10.360 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:12.236 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 330.779/1500.0
2026-01-21T23:34:12.640 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:34:13.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:13.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:13.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:13.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:14.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 328.711/1500.0
2026-01-21T23:34:16.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:16.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 326.642/1500.0
2026-01-21T23:34:16.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:16.386 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:16.386 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:18.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 324.575/1500.0
2026-01-21T23:34:19.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:19.391 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:19.391 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:19.391 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:20.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 322.508/1500.0
2026-01-21T23:34:22.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:22.411 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:34:22.411 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:22.411 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T23:34:22.576 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 320.438/1500.0
2026-01-21T23:34:22.649 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:34:24.644 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 318.37/1500.0
2026-01-21T23:34:25.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:25.415 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T23:34:25.415 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:25.415 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:26.712 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 316.302/1500.0
2026-01-21T23:34:28.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:28.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:28.421 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:28.421 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:28.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 314.235/1500.0
2026-01-21T23:34:30.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 312.166/1500.0
2026-01-21T23:34:31.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:31.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:34:31.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:31.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:34:32.659 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:34:32.679 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:33:59.119129
2026-01-21T23:34:32.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:33:59.119129
2026-01-21T23:34:32.680 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:34:32.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:34:32.681 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:34:32.681 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:34:32&start_after=2026-01-20T21:34:32&end_after=2026-01-21T21:34:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:34:32.819 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.823 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.826 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.855 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.858 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:34:32.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:34:32.862 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:34:32.862 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:34:32.862 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:34:32.862 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:34:32.863 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:34:32.863 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 623.136912
2026-01-21T23:34:32.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:34:32.863132    Obs time: 2026-01-21 21:44:56
2026-01-21T23:34:32.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:23.136868
2026-01-21T23:34:32.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  623
2026-01-21T23:34:32.863 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:34:32.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 310.099/1500.0
2026-01-21T23:34:34.431 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:34.452 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:34:34.452 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:34.452 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:34.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 308.032/1500.0
2026-01-21T23:34:37.053 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.962/1500.0
2026-01-21T23:34:37.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:37.455 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:37.455 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:37.456 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:39.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 303.895/1500.0
2026-01-21T23:34:40.459 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:40.482 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:40.482 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:40.482 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:41.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.826/1500.0
2026-01-21T23:34:41.872 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:34:43.257 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.76/1500.0
2026-01-21T23:34:43.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:43.487 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:43.487 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:43.487 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:45.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.692/1500.0
2026-01-21T23:34:46.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:46.511 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:46.511 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:46.511 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:47.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.622/1500.0
2026-01-21T23:34:49.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.554/1500.0
2026-01-21T23:34:49.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:49.515 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:49.515 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:49.515 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:51.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.487/1500.0
2026-01-21T23:34:51.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:34:52.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:52.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:52.538 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:52.538 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:53.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.418/1500.0
2026-01-21T23:34:55.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:55.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:55.543 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:55.543 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:55.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.351/1500.0
2026-01-21T23:34:57.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 285.282/1500.0
2026-01-21T23:34:58.547 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:34:58.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:34:58.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:34:58.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:34:59.801 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 283.215/1500.0
2026-01-21T23:35:01.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:01.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:01.573 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:01.573 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:01.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 281.146/1500.0
2026-01-21T23:35:01.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:35:03.937 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 279.078/1500.0
2026-01-21T23:35:04.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:04.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:35:04.593 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:04.593 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:35:06.005 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 277.011/1500.0
2026-01-21T23:35:07.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:07.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:35:07.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:07.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:08.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 274.942/1500.0
2026-01-21T23:35:10.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 272.873/1500.0
2026-01-21T23:35:10.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:10.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:10.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:10.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:11.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:35:12.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 270.808/1500.0
2026-01-21T23:35:13.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:13.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:13.622 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:13.622 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:14.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 268.778/1500.0
2026-01-21T23:35:16.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 266.749/1500.0
2026-01-21T23:35:16.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:16.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:16.642 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:16.642 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:18.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 264.717/1500.0
2026-01-21T23:35:19.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:19.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:19.646 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:19.646 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:20.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 262.688/1500.0
2026-01-21T23:35:21.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:35:22.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 260.657/1500.0
2026-01-21T23:35:22.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:22.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:35:22.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:22.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T23:35:24.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 258.626/1500.0
2026-01-21T23:35:25.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:25.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T23:35:25.673 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:25.673 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:26.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 256.595/1500.0
2026-01-21T23:35:28.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 254.565/1500.0
2026-01-21T23:35:28.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:28.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:28.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:28.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:30.444 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 252.536/1500.0
2026-01-21T23:35:31.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:31.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:31.682 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:31.682 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:31.920 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:35:31.921 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:34:59.328146
2026-01-21T23:35:31.921 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:34:59.328146
2026-01-21T23:35:31.921 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:35:31.921 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:35:31.921 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:35:31.921 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:35:31&start_after=2026-01-20T21:35:31&end_after=2026-01-21T21:35:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:35:32.086 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.087 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.088 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.088 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.090 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.091 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.092 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.093 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.094 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.096 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.097 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.100 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:35:32.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:35:32.102 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:35:32.102 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:35:32.102 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:35:32.102 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:35:32.103 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:35:32.103 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 563.896937
2026-01-21T23:35:32.123 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:35:32.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 250.504/1500.0
2026-01-21T23:35:34.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:35:34.141 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:35:34.141 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:35:34.141931    Obs time: 2026-01-21 21:44:56
2026-01-21T23:35:34.141 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:21.858069
2026-01-21T23:35:34.142 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  561
2026-01-21T23:35:34.142 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:35:34.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 248.473/1500.0
2026-01-21T23:35:34.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:34.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:34.686 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:34.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:36.535 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 246.443/1500.0
2026-01-21T23:35:37.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:37.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:37.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:37.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:38.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 244.413/1500.0
2026-01-21T23:35:40.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 242.382/1500.0
2026-01-21T23:35:40.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:40.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:40.711 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:40.712 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:41.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:35:42.626 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 240.352/1500.0
2026-01-21T23:35:43.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:43.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:43.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:43.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:44.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 238.321/1500.0
2026-01-21T23:35:46.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 236.291/1500.0
2026-01-21T23:35:46.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:46.739 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:46.739 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:46.739 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:48.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 234.261/1500.0
2026-01-21T23:35:49.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:49.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:49.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:49.742 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:50.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 232.23/1500.0
2026-01-21T23:35:51.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:35:52.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:52.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:52.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:52.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:52.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 230.2/1500.0
2026-01-21T23:35:54.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 228.169/1500.0
2026-01-21T23:35:55.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:55.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:55.786 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:55.786 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:56.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 226.139/1500.0
2026-01-21T23:35:58.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:35:58.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:35:58.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:35:58.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:35:58.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 224.108/1500.0
2026-01-21T23:36:00.900 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 222.078/1500.0
2026-01-21T23:36:01.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:36:01.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:01.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:01.812 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:01.812 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:02.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 220.048/1500.0
2026-01-21T23:36:04.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:04.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:04.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:04.815 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:04.961 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 218.019/1500.0
2026-01-21T23:36:06.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 215.988/1500.0
2026-01-21T23:36:07.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:07.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:36:07.835 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:07.835 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:36:09.022 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 213.956/1500.0
2026-01-21T23:36:10.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:10.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T23:36:10.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:10.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:36:11.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 211.926/1500.0
2026-01-21T23:36:11.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:36:13.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 209.895/1500.0
2026-01-21T23:36:13.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:13.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-21T23:36:13.860 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:13.860 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:36:15.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 207.865/1500.0
2026-01-21T23:36:16.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:16.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:36:16.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:16.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:17.192 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 205.835/1500.0
2026-01-21T23:36:19.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 203.756/1500.0
2026-01-21T23:36:19.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:19.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:19.885 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:19.885 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:21.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:36:21.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 201.7/1500.0
2026-01-21T23:36:22.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:22.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:22.889 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:22.889 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:23.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 199.668/1500.0
2026-01-21T23:36:25.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 197.639/1500.0
2026-01-21T23:36:25.892 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:25.915 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:36:25.915 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:25.915 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:36:27.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 195.607/1500.0
2026-01-21T23:36:28.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:28.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:36:28.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:28.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:29.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 193.577/1500.0
2026-01-21T23:36:31.194 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:36:31.213 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:35:59.525603
2026-01-21T23:36:31.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:35:59.525603
2026-01-21T23:36:31.213 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:36:31.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:36:31.214 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:36:31.214 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:36:31&start_after=2026-01-20T21:36:31&end_after=2026-01-21T21:36:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:36:31.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.429 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 191.546/1500.0
2026-01-21T23:36:31.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:36:31.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:36:31.444 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:36:31.444 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:36:31.444 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:36:31.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:36:31.444 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:36:31.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 504.554998
2026-01-21T23:36:31.445 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:36:31.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:31.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:36:31.923 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:31.923 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:36:33.447 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:36:33.448 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:36:33.448 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:36:33.448676    Obs time: 2026-01-21 21:44:56
2026-01-21T23:36:33.448 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:22.551324
2026-01-21T23:36:33.448 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  502
2026-01-21T23:36:33.448 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:36:33.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 189.514/1500.0
2026-01-21T23:36:34.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:34.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:36:34.927 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:34.927 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:35.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 187.449/1500.0
2026-01-21T23:36:37.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 185.418/1500.0
2026-01-21T23:36:37.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:37.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:37.949 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:37.949 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:39.591 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 183.389/1500.0
2026-01-21T23:36:40.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:36:40.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:40.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:40.953 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:40.953 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:41.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 181.357/1500.0
2026-01-21T23:36:43.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 179.326/1500.0
2026-01-21T23:36:43.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:43.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:43.976 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:43.976 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:45.682 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 177.296/1500.0
2026-01-21T23:36:46.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:46.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:46.980 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:46.980 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:47.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 175.265/1500.0
2026-01-21T23:36:49.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 173.235/1500.0
2026-01-21T23:36:49.983 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:50.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:50.003 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:50.003 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:50.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:36:51.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 171.204/1500.0
2026-01-21T23:36:53.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:53.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:53.007 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:53.007 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:53.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 169.136/1500.0
2026-01-21T23:36:55.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.068/1500.0
2026-01-21T23:36:56.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:56.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:56.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:56.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:36:58.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.0/1500.0
2026-01-21T23:36:59.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:36:59.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:36:59.034 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:36:59.034 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:00.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.933/1500.0
2026-01-21T23:37:00.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:37:02.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:02.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:02.058 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:02.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:02.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.865/1500.0
2026-01-21T23:37:04.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.795/1500.0
2026-01-21T23:37:05.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:05.062 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:05.062 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:05.062 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:06.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.727/1500.0
2026-01-21T23:37:08.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:08.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:08.066 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:08.066 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:08.357 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.658/1500.0
2026-01-21T23:37:10.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.59/1500.0
2026-01-21T23:37:10.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:37:11.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:11.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:11.069 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:11.069 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:12.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.522/1500.0
2026-01-21T23:37:14.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:14.092 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:14.092 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:14.092 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:14.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.454/1500.0
2026-01-21T23:37:16.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.386/1500.0
2026-01-21T23:37:17.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:17.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:17.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:17.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:18.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.317/1500.0
2026-01-21T23:37:20.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:20.119 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:20.119 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:20.119 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:20.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:37:20.767 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.249/1500.0
2026-01-21T23:37:22.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.181/1500.0
2026-01-21T23:37:23.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:23.123 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:23.123 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:23.123 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:24.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.112/1500.0
2026-01-21T23:37:26.126 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:26.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:26.147 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:26.147 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:26.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.044/1500.0
2026-01-21T23:37:29.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.976/1500.0
2026-01-21T23:37:29.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:29.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:29.151 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:29.151 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:30.501 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:37:30.520 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:36:59.724873
2026-01-21T23:37:30.520 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:36:59.724873
2026-01-21T23:37:30.520 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:37:30.520 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:37:30.520 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:37:30.520 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:37:30&start_after=2026-01-20T21:37:30&end_after=2026-01-21T21:37:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:37:30.657 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.663 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.664 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.668 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:37:30.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:37:30.673 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:37:30.673 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:37:30.673 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:37:30.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:37:30.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:37:30.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 445.326513
2026-01-21T23:37:30.674 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:37:31.108 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.909/1500.0
2026-01-21T23:37:32.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:32.175 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:32.175 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:32.175 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:32.676 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:37:32.677 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:37:32.677 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:37:32.677311    Obs time: 2026-01-21 21:44:56
2026-01-21T23:37:32.677 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:23.322689
2026-01-21T23:37:32.677 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  443
2026-01-21T23:37:32.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:37:33.176 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.841/1500.0
2026-01-21T23:37:35.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:35.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:37:35.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:35.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:37:35.244 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.772/1500.0
2026-01-21T23:37:37.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.669/1500.0
2026-01-21T23:37:38.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:38.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:37:38.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:38.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:39.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.56/1500.0
2026-01-21T23:37:39.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:37:41.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:41.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:41.200 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:41.200 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:41.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.493/1500.0
2026-01-21T23:37:43.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.425/1500.0
2026-01-21T23:37:44.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:44.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:44.202 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:44.202 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:45.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.357/1500.0
2026-01-21T23:37:47.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:47.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:37:47.229 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:47.229 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:37:47.729 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.287/1500.0
2026-01-21T23:37:49.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:37:49.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.219/1500.0
2026-01-21T23:37:50.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:50.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:37:50.233 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:50.233 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:51.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.153/1500.0
2026-01-21T23:37:53.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:53.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:53.252 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:53.252 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:53.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.084/1500.0
2026-01-21T23:37:56.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.014/1500.0
2026-01-21T23:37:56.255 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:56.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:56.256 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:56.256 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:58.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.946/1500.0
2026-01-21T23:37:59.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:37:59.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:37:59.280 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:37:59.280 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:37:59.705 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:38:00.138 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.879/1500.0
2026-01-21T23:38:02.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.811/1500.0
2026-01-21T23:38:02.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:02.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:02.282 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:02.282 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:04.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.741/1500.0
2026-01-21T23:38:05.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:05.307 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:05.307 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:05.307 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:06.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.673/1500.0
2026-01-21T23:38:08.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:08.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:08.310 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:08.310 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:08.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.605/1500.0
2026-01-21T23:38:09.712 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:38:10.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 92.537/1500.0
2026-01-21T23:38:11.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:11.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:11.330 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:11.330 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:12.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.469/1500.0
2026-01-21T23:38:14.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:14.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:14.334 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:14.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:14.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.363/1500.0
2026-01-21T23:38:16.721 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.295/1500.0
2026-01-21T23:38:17.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:17.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:17.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:17.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:18.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.226/1500.0
2026-01-21T23:38:19.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:38:20.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:20.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:20.358 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:20.358 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:20.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.158/1500.0
2026-01-21T23:38:22.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.09/1500.0
2026-01-21T23:38:23.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:23.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:23.380 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:23.380 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:24.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.022/1500.0
2026-01-21T23:38:26.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:26.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:38:26.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:26.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:38:27.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.953/1500.0
2026-01-21T23:38:29.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.886/1500.0
2026-01-21T23:38:29.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:29.402 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:38:29.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:29.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:29.731 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:38:29.732 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:37:59.926660
2026-01-21T23:38:29.732 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:37:59.926660
2026-01-21T23:38:29.732 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:38:29.732 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:38:29.732 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:38:29.732 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:38:29&start_after=2026-01-20T21:38:29&end_after=2026-01-21T21:38:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:38:29.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.882 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.883 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.889 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.891 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:38:29.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:38:29.901 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:38:29.901 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:38:29.901 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:38:29.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:38:29.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:38:29.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 386.098205
2026-01-21T23:38:29.902 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:38:31.199 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.817/1500.0
2026-01-21T23:38:31.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:38:31.920 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:38:31.920 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:38:31.920729    Obs time: 2026-01-21 21:44:56
2026-01-21T23:38:31.920 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:24.079271
2026-01-21T23:38:31.920 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  384
2026-01-21T23:38:31.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:38:32.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:32.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:32.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:32.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:33.267 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.749/1500.0
2026-01-21T23:38:35.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 67.681/1500.0
2026-01-21T23:38:35.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:35.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:35.409 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:35.410 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:37.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.613/1500.0
2026-01-21T23:38:38.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:38.411 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:38.411 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:38.411 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:38.928 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:38:39.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.544/1500.0
2026-01-21T23:38:41.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:41.435 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:41.435 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:41.435 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:41.540 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.476/1500.0
2026-01-21T23:38:43.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.409/1500.0
2026-01-21T23:38:44.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:44.438 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:44.438 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:44.438 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:45.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.341/1500.0
2026-01-21T23:38:47.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:47.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:47.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:47.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:47.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.271/1500.0
2026-01-21T23:38:48.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:38:49.813 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 53.203/1500.0
2026-01-21T23:38:50.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:50.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:50.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:50.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:51.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 51.135/1500.0
2026-01-21T23:38:53.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:53.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:53.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:53.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:53.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 49.067/1500.0
2026-01-21T23:38:56.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.999/1500.0
2026-01-21T23:38:56.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:56.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:56.490 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:56.490 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:38:58.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.93/1500.0
2026-01-21T23:38:58.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:38:59.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:38:59.510 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:38:59.510 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:38:59.510 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:00.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.862/1500.0
2026-01-21T23:39:02.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.794/1500.0
2026-01-21T23:39:02.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:02.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:02.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:02.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:04.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.726/1500.0
2026-01-21T23:39:05.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:05.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:05.532 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:05.532 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:06.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.657/1500.0
2026-01-21T23:39:08.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.589/1500.0
2026-01-21T23:39:08.535 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:08.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:08.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:08.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:08.955 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:39:10.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.521/1500.0
2026-01-21T23:39:11.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:11.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:39:11.576 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:11.576 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:39:12.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.453/1500.0
2026-01-21T23:39:14.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:14.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:39:14.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:14.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:14.631 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.385/1500.0
2026-01-21T23:39:16.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.317/1500.0
2026-01-21T23:39:17.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:17.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:17.589 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:17.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:18.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.248/1500.0
2026-01-21T23:39:18.964 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:39:20.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:20.608 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:39:20.608 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:20.608 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:39:20.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.18/1500.0
2026-01-21T23:39:22.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.112/1500.0
2026-01-21T23:39:23.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:23.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:39:23.610 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:23.610 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:24.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.043/1500.0
2026-01-21T23:39:26.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:26.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:26.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:26.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:27.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.977/1500.0
2026-01-21T23:39:28.973 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:39:28.974 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:39:00.127382
2026-01-21T23:39:28.974 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:39:00.127382
2026-01-21T23:39:28.974 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:39:28.974 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:39:28.974 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:39:28.974 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:39:28&start_after=2026-01-20T21:39:28&end_after=2026-01-21T21:39:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:39:29.091 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.092 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.093 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.093 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.095 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.096 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.097 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.101 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.101 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.103 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.104 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.105 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:39:29.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:39:29.107 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:39:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:39:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13504
2026-01-21T23:39:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:39:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:39:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 326.892469
2026-01-21T23:39:29.108 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:39:29.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.908/1500.0
2026-01-21T23:39:29.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:29.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:39:29.638 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:29.638 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:39:31.109 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:39:31.110 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:39:31.110 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:39:31.110092    Obs time: 2026-01-21 21:44:56
2026-01-21T23:39:31.110 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:24.889908
2026-01-21T23:39:31.110 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  324
2026-01-21T23:39:31.110 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:39:31.177 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.839/1500.0
2026-01-21T23:39:32.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:32.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0009999999999763531
2026-01-21T23:39:32.660 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:32.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:39:33.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.772/1500.0
2026-01-21T23:39:35.314 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.704/1500.0
2026-01-21T23:39:35.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:35.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:39:35.673 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:35.673 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:37.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.636/1500.0
2026-01-21T23:39:38.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:39:38.674 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:38.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:38.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:38.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:39.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.566/1500.0
2026-01-21T23:39:41.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.498/1500.0
2026-01-21T23:39:41.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:41.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:41.697 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:41.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:43.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232141_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/1500.0
2026-01-21T23:39:43.687 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:39:43.687 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:39:43.689 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:39:44.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T23:39:45.589 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-21T23:39:45.589 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-21T23:39:45.589 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:39:45.589 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:39:45.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:39:45.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:39:45.589 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:39:45.589 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:39:45.589 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:39:45.589 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:39:45.624 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:39:45.625 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:39:45.625 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T23:39:45.625 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:39:45.625 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:39:45.673 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:39:46.674 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T23:39:46.674 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T23:39:46.674 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:39:46.674 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:39:46.726 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:39:47.727 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:39:47.779 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:39:48.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:39:48.780 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:39:48.782 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.94
2026-01-21T23:39:48.782 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:36:54
2026-01-21T23:39:48.782 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:36:54
2026-01-21T23:39:48.782 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:39:48.782 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09300488188976376
2026-01-21T23:39:48.785 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T23:39:48.785 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-21T23:39:48.785 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-21T23:39:49.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:39:51.849 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-21T23:39:51.849 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:39:51.849 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:39:51.849 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:39:51.849 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:39:51.851 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:39:51.851 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:39:51.853 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:39:51.973 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:39:51.973 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:39:51.975 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769031591.975495
2026-01-21T23:39:52.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T23:39:52.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T23:39:52.851 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:52.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:52.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:52.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:55.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:39:55.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:39:55.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:39:55.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:39:57.235 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:39:57.236 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:39:57.254 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:39:58.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:39:58.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-21T23:39:58.896 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-21T23:39:58.896 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:39:58.896 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:39:59.470 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:39:59.470 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script SN2025advo_spec_17232141_13458_13504.json was run successfully
2026-01-21T23:39:59.470 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T23:39:59.470 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T23:39:59.470 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T23:39:59.470 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T23:39:59.470 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T23:39:59.471 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:39:59.471 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:39:59.971 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:39:59.971 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T23:39:59.971 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T23:39:59.971 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:39:59.971 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:39:59.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:39:59.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:39:59.971 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:39:59.972 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T23:39:59.994 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 08:19:11.03376   Targ dec = +04:32:43.4184
2026-01-21T23:39:59.994 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:39:59.994 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:39:59.994 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:40:00.001 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:40:00.001 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:40:00.001 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:40:00.001 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:40:01.034 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:40:03.036 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T23:40:03.036 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:40:03.045 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:40:03.474 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:40:03.474 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T23:40:03.474 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510894 COMPLETED 13504 reason
2026-01-21T23:40:03.474 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510894 COMPLETED 13504 reason
2026-01-21T23:40:03.475 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T23:40:03.475 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T23:40:03.475 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T23:40:03.475 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T23:40:03.475 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:40:03.475 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:40:06.478 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T23:40:06.478 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T23:40:08.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:40:08.480 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:40:08.480 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T23:40:08.480 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-21T23:40:08.480 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-21T23:40:08.480 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-21T23:40:08.482 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-21T23:40:08.482 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T21:44:56Z
2026-01-21T23:40:08.482 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-21T23:40:08.483 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-21T23:40:08.483 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-21T23:40:08.483 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-21T23:40:08.483 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-21T23:40:08.483 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:40:08.483 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:40:08.983 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:40:08.983 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-21T23:40:08.983 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T23:40:08.983 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:40:08.983 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:40:08.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:40:08.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:40:08.984 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:40:08.984 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-21T23:40:08.986 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 08:19:11.08812   Targ dec = +04:32:43.4256
2026-01-21T23:40:08.986 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:40:08.986 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:40:08.986 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:40:08.992 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:40:08.993 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:40:08.993 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:40:08.993 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:40:10.020 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:40:12.022 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T23:40:12.022 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:40:12.022 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:40:12.487 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:40:12.487 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-21T23:40:12.487 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-21T23:40:12.487 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-21T23:40:12.487 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-21T23:40:12.487 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510894
2026-01-21T23:40:12.487 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-21T23:40:12.487 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-21T23:40:12.487 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T21:11:52', 'end': '2026-01-21T21:40:12', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1700.0', 'events': {}}} with config status ID 17510894
2026-01-21T23:40:12.630 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T23:40:12.630 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:11:42Z', 'guide_off', 'config_id 13504', 'config_status_id 17510894', 'update_OCS 17510894 ATTEMPTED', 'run_script setup_SN2025advo_spec_17232141_13458_13504.json', 'run_script SN2025advo_spec_17232141_13458_13504.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510894 COMPLETED 13504 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:44:56Z', 'run_script arc_flat_lamp_off.json'] at time 23:40:12
2026-01-21T23:40:18.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:40:28.167 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:40:28.189 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:40:00.327462
2026-01-21T23:40:28.189 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:40:00.327462
2026-01-21T23:40:28.189 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:40:28.189 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:40:28.190 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:40:28.190 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:40:28&start_after=2026-01-20T21:40:28&end_after=2026-01-21T21:40:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:40:28.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.327 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.335 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.337 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:40:28.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:40:28.339 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:40:28.339 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-21T23:40:28.339 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:40:28.339 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:11:42Z
2026-01-21T23:40:28.339 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -1726.339769
2026-01-21T23:40:28.340 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:40:30.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:40:30.360 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:40:30.360 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:40:30.360928    Obs time: 2026-01-21 21:11:42
2026-01-21T23:40:30.360 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:31:11.639072
2026-01-21T23:40:30.360 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  84671
2026-01-21T23:40:30.361 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:11:42Z', 'guide_off', 'config_id 13504', 'config_status_id 17510960', 'update_OCS 17510960 ATTEMPTED', 'run_script setup_SN2025advo_spec_17232207_13458_13504.json', 'run_script SN2025advo_spec_17232207_13458_13504.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510960 COMPLETED 13504 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:44:56Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:40:30.361 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-21T23:40:30.361 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-21T23:40:30.361 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-21T23:40:30.361 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-21T23:40:30.361 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:40:30.361 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T23:40:30.362 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T23:40:30.362 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T23:40:30.362 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:40:30.362 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:40:33.365 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T23:40:33.365 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T23:40:35.367 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:40:35.367 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T23:40:35.367 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T21:11:42Z
2026-01-21T23:40:35.368 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T21:11:42Z
2026-01-21T23:40:35.368 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-21T23:40:35.368 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-21T23:40:35.368 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-21T23:40:35.368 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-21T23:40:35.368 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:40:35.368 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:40:37.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:40:38.371 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-21T23:40:38.371 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-21T23:40:40.373 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-21T23:40:40.373 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13504
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13504
2026-01-21T23:40:40.373 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17510960
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17510960
2026-01-21T23:40:40.373 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510960 ATTEMPTED
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510960 ATTEMPTED
2026-01-21T23:40:40.373 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:40:40.373 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:40:40.373 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 8.29441, 'targ_dec': 4.61476787169, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_SN2025advo_spec_17232207_13458_13504.json'}
2026-01-21T23:40:40.374 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:40:40.374 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:40:40.374 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-21T23:40:40.374 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510960
2026-01-21T23:40:40.374 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-21T23:40:40.374 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-21T23:40:40.374 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17510960
2026-01-21T23:40:40.450 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-21T23:40:40.874 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:40:40.874 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_SN2025advo_spec_17232207_13458_13504.json 1 times
2026-01-21T23:40:40.874 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-21T23:40:40.876 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-21T23:40:40.876 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-21T23:40:40.876 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-21T23:40:43.885 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:40:44.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:40:45.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-21T23:40:46.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-21T23:40:46.950 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  8.29490197197495 is close enough to target ra = 8.29441
2026-01-21T23:40:46.950 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  4.61527530345911 is close enough to target dec = 4.61476787169
2026-01-21T23:40:46.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-21T23:40:46.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:40:46.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:40:46.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:40:46.951 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:40:46.951 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-21T23:40:46.951 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-21T23:40:46.963 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:40:46.963 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:40:47.001 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:40:47.379 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:40:48.002 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:40:48.002 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:40:48.092 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:40:49.093 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:40:49.182 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:40:50.183 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:40:50.185 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.03
2026-01-21T23:40:50.185 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:40:06
2026-01-21T23:40:50.186 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:40:06
2026-01-21T23:40:50.186 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:40:50.186 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0929503149606299
2026-01-21T23:40:50.189 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-21T23:40:50.189 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-21T23:40:50.189 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-21T23:40:50.197 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:40:50.197 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:40:50.273 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:40:51.274 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:40:51.274 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:40:51.326 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:40:52.327 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:40:52.379 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:40:53.380 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:40:53.382 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.95
2026-01-21T23:40:53.382 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:40:39
2026-01-21T23:40:53.382 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:40:39
2026-01-21T23:40:53.382 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:40:53.382 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09299881889763778
2026-01-21T23:40:57.389 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:40:58.487 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-21T23:40:58.487 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:40:58.487 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:40:58.487 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:40:58.487 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:40:58.487 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:40:58.489 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:40:58.489 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:40:58.509 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:40:58.639 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:40:58.639 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:40:58.641 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769031658.6416042
2026-01-21T23:41:03.902 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:41:03.902 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:03.924 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:03.997 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-21T23:41:07.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:41:08.001 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-21T23:41:08.001 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-21T23:41:17.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:41:18.059 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-21T23:41:18.059 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T23:41:18.059 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:17:39.88 = 447898.2 arcseconds
2026-01-21T23:41:18.059 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 04:36:53.16 = 16613.16 arcseconds
2026-01-21T23:41:18.059 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-21T23:41:18.086 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T23:41:18.086 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.299
2026-01-21T23:41:18.086 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T23:41:18.086 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:17:40.417, +04:36:56.808).
2026-01-21T23:41:18.086 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 17 40.417  +04 36 56.808 .
2026-01-21T23:41:18.086 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 17 40.417  +04 36 56.808 .
2026-01-21T23:41:18.086 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 447906.255
2026-01-21T23:41:18.086 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: 16616.808
2026-01-21T23:41:18.296 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T23:41:23.302 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-21T23:41:23.302 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:41:23.302 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:41:23.302 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:41:23.302 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:41:23.303 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:41:23.304 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:41:23.304 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:23.306 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:23.418 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:41:23.418 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:41:23.420 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769031683.4206197
2026-01-21T23:41:24.804 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:41:27.418 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:41:27.419 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:41:00.533798
2026-01-21T23:41:27.419 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:41:00.533798
2026-01-21T23:41:27.419 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:41:27.419 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:41:27.419 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:41:27.419 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:41:27&start_after=2026-01-20T21:41:27&end_after=2026-01-21T21:41:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:41:27.539 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.540 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.540 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.542 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.546 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:41:27.553 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:41:27.554 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:41:27.554 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:41:27.554 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:41:27.554 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:41:27.554 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 208.445312
2026-01-21T23:41:27.555 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:41:27.680 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:41:27.680 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:27.682 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:27.810 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-21T23:41:29.557 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:41:29.558 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:41:29.558 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:41:29.558403    Obs time: 2026-01-21 21:44:56
2026-01-21T23:41:29.558 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:26.441597
2026-01-21T23:41:29.558 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  206
2026-01-21T23:41:29.558 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:41:31.813 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-21T23:41:31.834 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-21T23:41:31.834 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-21T23:41:31.834 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:17:39.88 = 447898.2 arcseconds
2026-01-21T23:41:31.834 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 04:36:53.16 = 16613.16 arcseconds
2026-01-21T23:41:31.834 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-21T23:41:31.855 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-21T23:41:31.855 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.255
2026-01-21T23:41:31.855 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-21T23:41:31.855 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:17:35.784, +04:37:35.596).
2026-01-21T23:41:31.855 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 17 35.784  +04 37 35.596 .
2026-01-21T23:41:31.855 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 17 35.784  +04 37 35.596 .
2026-01-21T23:41:31.855 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 447836.76
2026-01-21T23:41:31.855 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: 16655.596
2026-01-21T23:41:32.067 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-21T23:41:36.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:41:37.073 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-21T23:41:37.073 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:41:37.073 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:41:37.073 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:41:37.073 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:41:37.073 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:41:37.075 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:41:37.075 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:37.077 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:37.180 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:41:37.180 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:41:37.182 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769031697.1826081
2026-01-21T23:41:38.575 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:41:41.441 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:41:41.441 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:41.443 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:41.581 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-21T23:41:46.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:41:47.588 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-21T23:41:47.589 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:41:47.589 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:41:47.589 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:41:47.589 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:41:47.591 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:41:47.591 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:47.592 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:47.709 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:41:47.709 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:41:47.711 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769031707.7112904
2026-01-21T23:41:49.090 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-21T23:41:51.970 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-21T23:41:51.970 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:41:51.988 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:41:52.097 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-21T23:41:56.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:41:59.452 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2193  4206  14.8 to host 127.0.0.1 on port 12360
2026-01-21T23:41:59.452 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:41:59.452 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:42:02.455 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2193  4206  14.8
2026-01-21T23:42:02.455 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2193  4206  14.8
2026-01-21T23:42:04.457 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:42:06.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:42:16.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:42:26.658 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:42:26.677 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:42:00.731789
2026-01-21T23:42:26.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:42:00.731789
2026-01-21T23:42:26.677 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:42:26.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:42:26.677 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:42:26.677 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:42:26&start_after=2026-01-20T21:42:26&end_after=2026-01-21T21:42:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:42:26.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:42:26.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:42:26.843 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:42:26.843 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:42:26.843 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:42:26.843 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:42:26.843 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 149.156095
2026-01-21T23:42:26.844 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:42:28.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:42:28.863 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:42:28.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:42:28.863464    Obs time: 2026-01-21 21:44:56
2026-01-21T23:42:28.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:27.136536
2026-01-21T23:42:28.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  147
2026-01-21T23:42:28.863 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:42:35.870 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:42:43.493 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-21T23:42:43.493 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-21T23:42:43.493 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-21T23:42:45.881 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:42:46.496 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-21T23:42:46.496 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-21T23:42:48.498 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-21T23:42:48.498 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:42:48.498 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:42:48.498 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:42:48.498 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:42:48.498 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:42:48.498 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:42:48.498 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:42:49.560 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:42:51.562 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-21T23:42:51.562 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-21T23:42:51.562 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-21T23:42:51.613 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-21T23:42:51.613 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_SN2025advo_spec_17232207_13458_13504.json was run successfully
2026-01-21T23:42:51.613 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:42:51.613 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:42:51.613 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:42:51.613 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script SN2025advo_spec_17232207_13458_13504.json
2026-01-21T23:42:51.613 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'SN2025advo', 'observer': 'orapeleng', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'FAST', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '08:17:39.88', 'targ_dec': '04:36:53.16', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 1500000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'SN2025advo_spec_17232207_13458_13504.json'}
2026-01-21T23:42:51.613 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-21T23:42:51.613 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-21T23:42:52.114 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-21T23:42:52.114 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script SN2025advo_spec_17232207_13458_13504.json 1 times
2026-01-21T23:42:52.114 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-21T23:42:52.114 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-21T23:42:52.114 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-21T23:42:52.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-21T23:42:52.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-21T23:42:52.114 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-21T23:42:52.114 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-21T23:42:52.114 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-21T23:42:52.114 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-21T23:42:52.125 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-21T23:42:52.126 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-21T23:42:52.126 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-21T23:42:52.126 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-21T23:42:52.126 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:42:52.176 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:42:53.177 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-21T23:42:53.177 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-21T23:42:53.177 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-21T23:42:53.177 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-21T23:42:53.229 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-21T23:42:54.230 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-21T23:42:54.282 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-21T23:42:55.283 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-21T23:42:55.284 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.94
2026-01-21T23:42:55.285 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-21 23:42:15
2026-01-21T23:42:55.285 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-21T23:42:15
2026-01-21T23:42:55.285 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-21T23:42:55.285 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09300488188976376
2026-01-21T23:42:55.287 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-21T23:42:55.287 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-21T23:42:55.287 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-21T23:42:55.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:42:56.328 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-21T23:42:58.353 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='08:17:39.88', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='04:36:53.16', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='orapeleng', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='SN2025advo', comment='The object name')]
2026-01-21T23:42:58.353 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-21T23:42:58.353 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-21T23:42:58.353 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-21T23:42:58.353 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-21T23:42:58.355 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-21T23:42:58.355 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-21T23:42:58.357 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-21T23:42:58.473 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-21T23:42:58.473 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-21T23:42:58.475 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769031778.4754694
2026-01-21T23:42:58.854 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-21T23:42:58.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-21T23:42:59.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:42:59.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:42:59.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:42:59.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:02.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:02.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:02.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:02.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:03.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1494.591/1500.0
2026-01-21T23:43:05.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:05.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:05.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:05.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:05.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:43:05.955 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1492.551/1500.0
2026-01-21T23:43:07.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1490.521/1500.0
2026-01-21T23:43:08.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:08.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:08.429 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:08.429 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:10.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1488.49/1500.0
2026-01-21T23:43:11.432 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:11.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:11.433 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:11.433 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:12.046 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1486.46/1500.0
2026-01-21T23:43:14.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1484.43/1500.0
2026-01-21T23:43:14.436 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:14.458 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:14.458 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:14.458 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:15.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:43:16.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1482.401/1500.0
2026-01-21T23:43:17.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:17.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:17.477 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:17.477 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:18.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1480.369/1500.0
2026-01-21T23:43:20.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1478.338/1500.0
2026-01-21T23:43:20.480 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:20.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:20.497 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:20.497 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:22.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1476.308/1500.0
2026-01-21T23:43:23.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:23.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:23.499 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:23.499 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:24.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1474.277/1500.0
2026-01-21T23:43:25.921 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:43:25.922 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:43:00.931287
2026-01-21T23:43:25.922 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:43:00.931287
2026-01-21T23:43:25.922 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:43:25.922 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:43:25.922 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:43:25.922 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:43:25&start_after=2026-01-20T21:43:25&end_after=2026-01-21T21:43:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:43:26.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:43:26.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:43:26.068 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:43:26.069 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:43:26.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:43:26.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:43:26.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 89.930772
2026-01-21T23:43:26.069 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:43:26.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1472.249/1500.0
2026-01-21T23:43:26.502 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:26.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:43:26.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:26.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:43:28.070 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:43:28.090 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:43:28.090 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:43:28.090220    Obs time: 2026-01-21 21:44:56
2026-01-21T23:43:28.090 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:27.909780
2026-01-21T23:43:28.090 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  87
2026-01-21T23:43:28.090 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:43:28.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1470.217/1500.0
2026-01-21T23:43:29.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:29.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:43:29.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:29.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:30.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1468.186/1500.0
2026-01-21T23:43:32.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1466.156/1500.0
2026-01-21T23:43:32.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:32.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:32.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:32.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:34.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1464.125/1500.0
2026-01-21T23:43:35.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:43:35.552 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:35.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:43:35.553 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:35.553 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:43:36.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1462.095/1500.0
2026-01-21T23:43:38.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1460.064/1500.0
2026-01-21T23:43:38.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:38.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:43:38.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:38.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:40.472 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1458.034/1500.0
2026-01-21T23:43:41.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:41.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:41.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:41.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:42.502 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1456.004/1500.0
2026-01-21T23:43:44.533 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1453.973/1500.0
2026-01-21T23:43:44.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:44.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:43:44.601 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:44.601 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:43:45.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:43:46.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1451.943/1500.0
2026-01-21T23:43:47.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:47.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:43:47.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:47.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:48.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1449.912/1500.0
2026-01-21T23:43:50.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:50.624 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1447.882/1500.0
2026-01-21T23:43:50.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:50.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:50.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:52.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1445.852/1500.0
2026-01-21T23:43:53.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:53.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:53.644 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:53.644 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:54.685 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1443.821/1500.0
2026-01-21T23:43:55.111 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:43:56.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:56.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:56.665 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:56.665 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:43:56.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1441.791/1500.0
2026-01-21T23:43:58.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1439.76/1500.0
2026-01-21T23:43:59.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:43:59.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:43:59.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:43:59.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:00.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1437.732/1500.0
2026-01-21T23:44:02.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:02.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:02.691 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:02.691 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:02.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1435.701/1500.0
2026-01-21T23:44:04.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1433.669/1500.0
2026-01-21T23:44:05.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:44:05.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:05.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:44:05.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:05.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:44:06.867 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1431.64/1500.0
2026-01-21T23:44:08.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:08.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:44:08.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:08.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:08.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1429.608/1500.0
2026-01-21T23:44:10.966 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1427.545/1500.0
2026-01-21T23:44:11.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:11.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:11.736 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:11.736 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:12.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1425.51/1500.0
2026-01-21T23:44:14.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:14.759 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:14.759 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:14.759 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:15.027 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1423.479/1500.0
2026-01-21T23:44:15.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:44:17.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1421.449/1500.0
2026-01-21T23:44:17.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:17.763 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:44:17.763 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:17.763 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:44:19.088 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1419.42/1500.0
2026-01-21T23:44:20.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:20.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:44:20.787 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:20.787 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:21.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1417.388/1500.0
2026-01-21T23:44:23.148 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1415.358/1500.0
2026-01-21T23:44:23.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:23.791 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:44:23.791 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:23.791 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:44:25.138 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:44:25.157 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:44:01.146191
2026-01-21T23:44:25.158 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:44:01.146191
2026-01-21T23:44:25.158 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:44:25.158 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:44:25.158 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:44:25.158 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:44:25&start_after=2026-01-20T21:44:25&end_after=2026-01-21T21:44:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:44:25.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1413.327/1500.0
2026-01-21T23:44:25.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.280 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.281 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.282 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.288 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.290 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:44:25.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:44:25.292 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:44:25.292 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:44:25.292 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:44:25.292 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:44:25.292 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 30.707263
2026-01-21T23:44:25.293 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:44:26.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:26.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:44:26.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:26.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:27.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1411.297/1500.0
2026-01-21T23:44:27.293 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:44:27.294 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:44:27.294 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:44:27.294471    Obs time: 2026-01-21 21:44:56
2026-01-21T23:44:27.294 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:28.705529
2026-01-21T23:44:27.294 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  28
2026-01-21T23:44:27.294 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-21T23:44:29.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1409.266/1500.0
2026-01-21T23:44:29.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:29.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:29.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:29.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:31.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1407.236/1500.0
2026-01-21T23:44:32.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:32.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:32.839 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:32.839 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:33.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1405.206/1500.0
2026-01-21T23:44:34.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:44:35.369 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1403.175/1500.0
2026-01-21T23:44:35.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:35.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:35.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:35.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:37.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1401.107/1500.0
2026-01-21T23:44:38.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:38.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:38.865 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:38.865 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:39.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1399.038/1500.0
2026-01-21T23:44:41.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1396.97/1500.0
2026-01-21T23:44:41.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:41.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:41.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:41.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:43.642 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1394.902/1500.0
2026-01-21T23:44:44.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:44:44.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:44.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:44.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:44.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:45.710 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1392.834/1500.0
2026-01-21T23:44:47.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1390.766/1500.0
2026-01-21T23:44:47.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:47.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:47.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:47.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:49.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1388.697/1500.0
2026-01-21T23:44:50.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:50.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:50.931 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:50.931 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:51.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1386.629/1500.0
2026-01-21T23:44:53.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:53.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:44:53.933 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:53.934 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:44:53.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1384.561/1500.0
2026-01-21T23:44:54.318 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:44:56.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1382.493/1500.0
2026-01-21T23:44:56.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:56.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:44:56.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:56.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:44:58.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1380.425/1500.0
2026-01-21T23:44:59.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:44:59.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:44:59.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:44:59.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:00.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1378.356/1500.0
2026-01-21T23:45:02.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1376.289/1500.0
2026-01-21T23:45:02.962 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:02.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:02.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:02.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:04.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1374.222/1500.0
2026-01-21T23:45:04.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:45:05.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:06.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:06.000 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:06.000 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:06.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1372.152/1500.0
2026-01-21T23:45:08.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1370.085/1500.0
2026-01-21T23:45:09.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:09.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:09.071 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:09.071 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:10.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1368.017/1500.0
2026-01-21T23:45:12.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:12.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:12.075 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:12.075 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:12.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1365.949/1500.0
2026-01-21T23:45:14.336 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:45:14.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1363.88/1500.0
2026-01-21T23:45:15.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:15.095 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:15.095 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:15.095 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:16.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1361.812/1500.0
2026-01-21T23:45:18.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:18.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:18.099 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:18.099 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:18.801 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1359.742/1500.0
2026-01-21T23:45:20.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1357.674/1500.0
2026-01-21T23:45:21.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:21.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:21.121 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:21.121 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:22.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1355.608/1500.0
2026-01-21T23:45:24.124 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:24.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:24.142 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:24.142 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:24.345 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:45:24.345 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:45:01.410234
2026-01-21T23:45:24.345 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:45:01.410234
2026-01-21T23:45:24.346 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:45:24.346 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:45:24.346 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:45:24.346 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:45:24&start_after=2026-01-20T21:45:24&end_after=2026-01-21T21:45:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:45:24.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.467 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.469 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.475 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.476 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.477 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:45:24.478 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:45:24.479 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:45:24.479 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:45:24.479 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:45:24.479 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:45:24.479 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -28.479945
2026-01-21T23:45:24.480 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:45:25.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1353.54/1500.0
2026-01-21T23:45:26.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:45:26.483 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:45:26.483 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:45:26.483683    Obs time: 2026-01-21 21:44:56
2026-01-21T23:45:26.483 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:29.516317
2026-01-21T23:45:26.483 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86369
2026-01-21T23:45:26.483 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511574', 'update_OCS 17511574 ATTEMPTED', 'run_script setup_std_star_EG21_17232821_13490_13536.json', 'run_script std_star_EG21_17232821_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511574 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:45:26.483 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:45:27.074 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1351.47/1500.0
2026-01-21T23:45:27.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:27.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:27.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:27.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:29.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1349.401/1500.0
2026-01-21T23:45:30.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:30.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:30.169 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:30.169 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:31.211 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1347.335/1500.0
2026-01-21T23:45:33.170 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:33.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:33.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:33.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:33.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1345.265/1500.0
2026-01-21T23:45:33.490 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:45:35.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1343.197/1500.0
2026-01-21T23:45:36.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:36.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:45:36.193 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:36.193 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:45:37.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1341.128/1500.0
2026-01-21T23:45:39.196 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:39.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:45:39.197 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:39.197 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:39.484 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1339.06/1500.0
2026-01-21T23:45:41.552 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1336.993/1500.0
2026-01-21T23:45:42.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:42.219 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:42.219 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:42.219 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:43.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:45:43.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1334.924/1500.0
2026-01-21T23:45:45.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:45.223 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:45.223 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:45.223 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:45.688 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1332.856/1500.0
2026-01-21T23:45:47.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1330.787/1500.0
2026-01-21T23:45:48.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:48.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:48.247 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:48.247 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:49.824 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1328.719/1500.0
2026-01-21T23:45:51.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:51.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:51.250 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:51.250 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:51.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1326.651/1500.0
2026-01-21T23:45:53.509 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:45:53.961 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1324.583/1500.0
2026-01-21T23:45:54.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:54.271 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:54.271 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:54.271 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:56.029 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1322.515/1500.0
2026-01-21T23:45:57.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:45:57.275 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:45:57.275 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:45:57.275 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:45:58.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1320.447/1500.0
2026-01-21T23:46:00.165 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1318.378/1500.0
2026-01-21T23:46:00.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:00.300 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:00.300 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:00.300 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:02.234 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1316.31/1500.0
2026-01-21T23:46:03.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:03.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:03.304 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:03.304 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:03.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:46:04.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1314.242/1500.0
2026-01-21T23:46:06.307 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:06.327 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:06.327 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:06.327 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:06.370 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1312.174/1500.0
2026-01-21T23:46:08.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1310.106/1500.0
2026-01-21T23:46:09.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:09.351 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:09.351 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:09.351 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:10.507 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1308.037/1500.0
2026-01-21T23:46:12.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:12.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:12.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:12.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:12.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1305.969/1500.0
2026-01-21T23:46:13.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:46:14.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1303.901/1500.0
2026-01-21T23:46:15.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:15.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:15.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:15.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:16.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1301.833/1500.0
2026-01-21T23:46:18.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:18.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:18.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:18.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:18.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1299.765/1500.0
2026-01-21T23:46:20.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1297.696/1500.0
2026-01-21T23:46:21.386 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:21.386 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:21.386 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:21.386 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:22.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1295.628/1500.0
2026-01-21T23:46:23.538 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:46:23.559 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:46:01.700877
2026-01-21T23:46:23.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:46:01.700877
2026-01-21T23:46:23.560 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:46:23.560 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:46:23.560 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:46:23.560 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:46:23&start_after=2026-01-20T21:46:23&end_after=2026-01-21T21:46:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:46:23.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.718 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.721 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.723 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.725 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.725 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:46:23.727 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:46:23.728 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:46:23.728 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:46:23.728 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:46:23.728 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:46:23.728 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -87.728467
2026-01-21T23:46:23.729 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:46:24.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:24.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:24.389 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:24.389 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:24.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1293.561/1500.0
2026-01-21T23:46:25.731 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:46:25.747 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:46:25.747 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:46:25.747956    Obs time: 2026-01-21 21:44:56
2026-01-21T23:46:25.748 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:30.252044
2026-01-21T23:46:25.748 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86310
2026-01-21T23:46:25.748 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511596', 'update_OCS 17511596 ATTEMPTED', 'run_script setup_std_star_EG21_17232843_13490_13536.json', 'run_script std_star_EG21_17232843_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511596 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:46:25.748 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:46:27.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1291.493/1500.0
2026-01-21T23:46:27.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:27.411 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:27.411 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:27.411 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:29.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1289.425/1500.0
2026-01-21T23:46:30.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:30.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:46:30.437 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:30.437 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:46:31.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1287.357/1500.0
2026-01-21T23:46:32.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:46:33.257 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1285.287/1500.0
2026-01-21T23:46:33.440 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:33.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:46:33.441 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:33.441 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:35.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1283.219/1500.0
2026-01-21T23:46:36.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:36.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:36.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:36.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:37.393 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1281.15/1500.0
2026-01-21T23:46:39.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1279.082/1500.0
2026-01-21T23:46:39.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:39.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:46:39.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:39.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:46:41.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1277.014/1500.0
2026-01-21T23:46:42.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:42.488 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:46:42.488 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:42.488 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:42.762 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:46:43.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1274.946/1500.0
2026-01-21T23:46:45.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:45.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:45.492 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:45.492 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:45.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1272.88/1500.0
2026-01-21T23:46:47.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1270.809/1500.0
2026-01-21T23:46:48.495 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:48.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:48.512 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:48.512 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:49.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1268.743/1500.0
2026-01-21T23:46:51.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:51.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:51.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:51.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:51.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1266.673/1500.0
2026-01-21T23:46:52.772 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:46:53.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1264.605/1500.0
2026-01-21T23:46:54.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:54.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:46:54.539 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:54.539 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:46:56.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1262.537/1500.0
2026-01-21T23:46:57.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:46:57.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:46:57.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:46:57.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:46:58.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1260.468/1500.0
2026-01-21T23:47:00.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1258.4/1500.0
2026-01-21T23:47:00.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:00.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:47:00.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:00.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:02.212 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1256.332/1500.0
2026-01-21T23:47:02.780 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:47:03.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:03.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:03.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:03.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:04.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1254.264/1500.0
2026-01-21T23:47:06.348 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1252.195/1500.0
2026-01-21T23:47:06.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:06.592 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:06.592 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:06.592 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:08.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1250.129/1500.0
2026-01-21T23:47:09.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:09.615 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:09.615 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:09.615 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:10.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1248.059/1500.0
2026-01-21T23:47:12.553 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1245.991/1500.0
2026-01-21T23:47:12.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:12.639 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:12.639 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:12.639 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:12.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:47:14.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1243.922/1500.0
2026-01-21T23:47:15.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:15.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:47:15.643 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:15.643 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:47:16.690 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1241.854/1500.0
2026-01-21T23:47:18.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:18.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:47:18.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:18.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:18.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1239.786/1500.0
2026-01-21T23:47:20.826 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1237.72/1500.0
2026-01-21T23:47:21.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:21.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:21.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:21.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:22.797 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:47:22.818 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:47:01.944971
2026-01-21T23:47:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:47:01.944971
2026-01-21T23:47:22.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:47:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:47:22.818 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:47:22.818 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:47:22&start_after=2026-01-20T21:47:22&end_after=2026-01-21T21:47:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:47:22.894 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1235.65/1500.0
2026-01-21T23:47:22.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.937 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.939 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.940 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.941 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.942 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.944 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.947 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:47:22.950 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:47:22.951 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:47:22.951 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:47:22.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:47:22.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:47:22.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -146.951578
2026-01-21T23:47:22.952 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:47:24.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:24.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:24.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:24.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:24.953 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:47:24.954 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:47:24.954 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:47:24.954087    Obs time: 2026-01-21 21:44:56
2026-01-21T23:47:24.954 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:31.045913
2026-01-21T23:47:24.954 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86251
2026-01-21T23:47:24.954 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:47:24.954 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:47:24.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1233.583/1500.0
2026-01-21T23:47:27.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1231.515/1500.0
2026-01-21T23:47:27.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:27.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:27.673 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:27.673 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:29.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1229.445/1500.0
2026-01-21T23:47:30.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:30.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:30.693 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:30.693 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:31.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1227.377/1500.0
2026-01-21T23:47:31.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:47:33.235 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1225.308/1500.0
2026-01-21T23:47:33.696 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:33.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:33.697 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:33.697 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:35.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1223.24/1500.0
2026-01-21T23:47:36.700 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:36.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:36.717 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:36.717 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:37.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1221.172/1500.0
2026-01-21T23:47:39.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1219.105/1500.0
2026-01-21T23:47:39.720 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:39.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:39.721 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:39.721 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:41.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1217.037/1500.0
2026-01-21T23:47:41.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:47:42.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:42.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:42.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:42.742 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:43.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1214.969/1500.0
2026-01-21T23:47:45.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1212.901/1500.0
2026-01-21T23:47:45.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:45.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:45.746 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:45.746 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:47.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1210.831/1500.0
2026-01-21T23:47:48.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:48.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:48.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:48.772 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:49.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1208.763/1500.0
2026-01-21T23:47:51.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:51.776 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:51.776 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:51.776 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:51.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1206.695/1500.0
2026-01-21T23:47:51.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:47:53.918 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1204.626/1500.0
2026-01-21T23:47:54.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:54.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:54.797 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:54.797 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:55.986 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1202.558/1500.0
2026-01-21T23:47:57.800 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:47:57.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:47:57.801 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:47:57.801 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:47:58.054 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1200.49/1500.0
2026-01-21T23:48:00.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1198.421/1500.0
2026-01-21T23:48:00.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:00.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:00.827 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:00.827 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:01.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:48:02.190 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1196.353/1500.0
2026-01-21T23:48:03.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:03.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:03.830 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:03.830 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:04.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1194.286/1500.0
2026-01-21T23:48:06.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1192.217/1500.0
2026-01-21T23:48:06.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:06.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:06.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:06.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:08.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1190.149/1500.0
2026-01-21T23:48:09.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:09.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:09.859 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:09.859 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:10.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1188.081/1500.0
2026-01-21T23:48:11.994 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:48:12.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1186.013/1500.0
2026-01-21T23:48:12.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:12.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:12.878 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:12.878 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:14.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1183.945/1500.0
2026-01-21T23:48:15.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:15.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:15.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:15.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:16.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1181.876/1500.0
2026-01-21T23:48:18.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1179.808/1500.0
2026-01-21T23:48:18.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:18.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:18.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:18.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:20.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1177.739/1500.0
2026-01-21T23:48:21.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:21.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:21.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:21.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:22.002 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:48:22.003 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:48:02.156585
2026-01-21T23:48:22.003 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:48:02.156585
2026-01-21T23:48:22.003 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:48:22.003 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:48:22.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:48:22.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:48:22&start_after=2026-01-20T21:48:22&end_after=2026-01-21T21:48:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:48:22.134 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.137 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.139 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.139 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.140 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.141 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.143 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:48:22.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:48:22.149 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:48:22.149 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:48:22.149 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:48:22.150 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:48:22.150 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -206.150049
2026-01-21T23:48:22.150 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:48:22.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1175.671/1500.0
2026-01-21T23:48:24.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:48:24.153 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:48:24.153 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:48:24.153825    Obs time: 2026-01-21 21:44:56
2026-01-21T23:48:24.153 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:31.846175
2026-01-21T23:48:24.153 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86191
2026-01-21T23:48:24.153 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:48:24.153 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:48:24.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:24.911 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:24.911 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:24.911 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:24.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1173.603/1500.0
2026-01-21T23:48:27.009 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1171.535/1500.0
2026-01-21T23:48:27.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:27.915 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:48:27.915 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:27.915 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:48:29.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1169.466/1500.0
2026-01-21T23:48:30.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:30.939 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:48:30.939 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:30.939 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:31.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1167.4/1500.0
2026-01-21T23:48:31.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:48:33.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1165.33/1500.0
2026-01-21T23:48:33.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:33.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:33.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:33.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:35.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1163.262/1500.0
2026-01-21T23:48:36.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:36.963 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:36.963 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:36.963 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:37.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1161.194/1500.0
2026-01-21T23:48:39.418 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1159.126/1500.0
2026-01-21T23:48:39.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:39.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:39.967 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:39.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:41.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:48:41.486 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1157.057/1500.0
2026-01-21T23:48:42.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:42.987 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:42.987 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:42.987 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:43.555 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1154.989/1500.0
2026-01-21T23:48:45.623 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1152.921/1500.0
2026-01-21T23:48:45.990 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:45.991 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:45.991 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:45.991 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:47.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1150.853/1500.0
2026-01-21T23:48:48.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:49.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:48:49.007 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:49.007 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:48:49.759 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1148.785/1500.0
2026-01-21T23:48:51.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:48:51.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1146.716/1500.0
2026-01-21T23:48:52.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:52.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:48:52.010 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:52.010 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:53.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1144.647/1500.0
2026-01-21T23:48:55.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:55.028 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:55.028 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:55.028 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:55.964 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1142.58/1500.0
2026-01-21T23:48:58.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:48:58.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:48:58.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:48:58.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:48:58.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1140.513/1500.0
2026-01-21T23:49:00.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1138.445/1500.0
2026-01-21T23:49:01.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:01.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:01.033 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:01.034 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:01.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:49:02.169 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1136.377/1500.0
2026-01-21T23:49:04.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:04.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:04.053 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:04.053 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:04.237 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1134.309/1500.0
2026-01-21T23:49:06.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1132.239/1500.0
2026-01-21T23:49:07.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:07.055 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:07.055 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:07.055 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:08.373 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1130.172/1500.0
2026-01-21T23:49:10.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:10.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:10.076 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:10.076 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:10.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1128.104/1500.0
2026-01-21T23:49:11.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:49:12.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1126.036/1500.0
2026-01-21T23:49:13.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:13.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:13.080 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:13.080 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:14.578 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1123.922/1500.0
2026-01-21T23:49:16.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:16.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:16.103 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:16.103 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:16.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1121.898/1500.0
2026-01-21T23:49:18.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1119.831/1500.0
2026-01-21T23:49:19.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:19.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:19.106 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:19.106 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:20.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1117.763/1500.0
2026-01-21T23:49:21.209 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:49:21.209 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:49:02.355439
2026-01-21T23:49:21.210 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:49:02.355439
2026-01-21T23:49:21.210 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:49:21.210 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:49:21.210 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:49:21.210 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:49:21&start_after=2026-01-20T21:49:21&end_after=2026-01-21T21:49:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:49:21.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.353 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:49:21.360 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:49:21.394 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:49:21.395 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:49:21.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:49:21.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:49:21.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -265.395208
2026-01-21T23:49:21.396 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:49:22.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:22.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:22.125 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:22.125 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:22.851 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1115.693/1500.0
2026-01-21T23:49:23.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:49:23.416 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:49:23.417 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:49:23.417025    Obs time: 2026-01-21 21:44:56
2026-01-21T23:49:23.417 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:32.582975
2026-01-21T23:49:23.417 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86132
2026-01-21T23:49:23.417 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:49:23.417 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:49:24.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1113.625/1500.0
2026-01-21T23:49:25.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:25.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:25.129 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:25.129 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:26.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1111.556/1500.0
2026-01-21T23:49:28.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:28.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:28.151 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:28.151 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:29.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1109.488/1500.0
2026-01-21T23:49:30.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:49:31.124 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1107.42/1500.0
2026-01-21T23:49:31.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:31.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:31.153 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:31.154 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:33.192 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1105.352/1500.0
2026-01-21T23:49:34.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:34.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:34.173 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:34.173 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:35.260 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1103.284/1500.0
2026-01-21T23:49:37.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:37.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:37.177 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:37.177 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:37.328 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1101.217/1500.0
2026-01-21T23:49:39.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1099.149/1500.0
2026-01-21T23:49:40.180 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:40.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:40.200 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:40.200 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:40.431 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:49:41.465 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1097.081/1500.0
2026-01-21T23:49:43.203 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:43.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:43.204 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:43.204 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:43.533 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1095.012/1500.0
2026-01-21T23:49:45.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1092.944/1500.0
2026-01-21T23:49:46.207 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:46.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:46.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:46.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:47.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1090.876/1500.0
2026-01-21T23:49:49.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:49.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:49.229 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:49.229 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:49.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1088.806/1500.0
2026-01-21T23:49:50.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:49:51.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1086.738/1500.0
2026-01-21T23:49:52.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:52.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:52.249 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:52.249 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:53.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1084.67/1500.0
2026-01-21T23:49:55.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:55.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:55.253 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:55.253 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:49:55.943 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1082.601/1500.0
2026-01-21T23:49:58.011 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1080.533/1500.0
2026-01-21T23:49:58.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:49:58.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:49:58.277 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:49:58.277 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:00.079 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1078.465/1500.0
2026-01-21T23:50:00.447 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:50:01.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:01.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:01.281 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:01.281 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:02.147 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1076.397/1500.0
2026-01-21T23:50:04.215 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1074.329/1500.0
2026-01-21T23:50:04.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:04.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:04.304 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:04.304 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:06.284 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1072.261/1500.0
2026-01-21T23:50:07.307 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:07.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:07.308 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:07.308 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:08.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1070.193/1500.0
2026-01-21T23:50:10.311 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:10.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:10.332 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:10.332 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:10.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1068.124/1500.0
2026-01-21T23:50:10.452 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:50:12.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1066.057/1500.0
2026-01-21T23:50:13.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:13.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:13.336 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:13.336 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:14.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1063.987/1500.0
2026-01-21T23:50:16.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:16.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:16.360 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:16.361 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:16.625 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1061.919/1500.0
2026-01-21T23:50:18.693 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1059.851/1500.0
2026-01-21T23:50:19.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:19.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:19.364 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:19.364 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:20.461 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:50:20.482 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:50:02.556794
2026-01-21T23:50:20.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:50:02.556794
2026-01-21T23:50:20.482 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:50:20.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:50:20.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:50:20.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:50:20&start_after=2026-01-20T21:50:20&end_after=2026-01-21T21:50:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:50:20.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:50:20.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:50:20.653 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:50:20.654 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:50:20.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:50:20.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:50:20.654 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -324.654186
2026-01-21T23:50:20.654 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:50:20.761 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1057.783/1500.0
2026-01-21T23:50:22.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:22.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:22.382 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:22.382 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:22.657 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:50:22.657 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:50:22.657 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:50:22.657959    Obs time: 2026-01-21 21:44:56
2026-01-21T23:50:22.658 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:54:33.342041
2026-01-21T23:50:22.658 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86073
2026-01-21T23:50:22.658 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:50:22.658 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:50:22.829 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1055.715/1500.0
2026-01-21T23:50:24.898 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1053.646/1500.0
2026-01-21T23:50:25.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:25.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:25.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:25.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:27.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1051.578/1500.0
2026-01-21T23:50:28.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:28.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:28.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:28.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:29.072 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1049.463/1500.0
2026-01-21T23:50:29.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:50:31.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1047.404/1500.0
2026-01-21T23:50:31.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:31.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:50:31.410 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:31.410 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:50:33.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1045.373/1500.0
2026-01-21T23:50:34.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:34.432 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: -0.0010000000000047748
2026-01-21T23:50:34.432 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:34.432 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:50:35.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1043.305/1500.0
2026-01-21T23:50:37.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1041.237/1500.0
2026-01-21T23:50:37.434 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:37.434 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:50:37.434 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:37.434 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:39.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1039.169/1500.0
2026-01-21T23:50:39.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:50:40.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:40.438 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:40.438 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:40.438 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:41.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1037.101/1500.0
2026-01-21T23:50:43.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:43.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:43.457 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:43.457 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:43.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1035.033/1500.0
2026-01-21T23:50:45.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1033.003/1500.0
2026-01-21T23:50:46.460 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:46.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:46.461 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:46.461 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:47.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1030.973/1500.0
2026-01-21T23:50:49.464 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:49.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:49.465 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:49.465 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:49.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1028.866/1500.0
2026-01-21T23:50:49.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:50:51.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1026.835/1500.0
2026-01-21T23:50:52.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:52.488 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:52.488 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:52.488 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:53.702 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1024.805/1500.0
2026-01-21T23:50:55.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:55.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:55.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:55.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:55.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1022.774/1500.0
2026-01-21T23:50:57.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1020.745/1500.0
2026-01-21T23:50:58.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:50:58.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:50:58.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:50:58.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:50:59.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:50:59.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1018.713/1500.0
2026-01-21T23:51:01.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:01.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:01.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:01.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:01.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1016.683/1500.0
2026-01-21T23:51:03.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1014.653/1500.0
2026-01-21T23:51:04.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:04.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:04.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:04.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:05.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1012.622/1500.0
2026-01-21T23:51:07.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:07.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:07.554 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:07.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:07.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1010.593/1500.0
2026-01-21T23:51:09.701 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:51:09.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1008.561/1500.0
2026-01-21T23:51:10.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:10.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:10.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:10.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:11.976 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1006.531/1500.0
2026-01-21T23:51:13.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:13.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:13.597 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:13.597 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:14.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1004.501/1500.0
2026-01-21T23:51:16.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1002.47/1500.0
2026-01-21T23:51:16.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:16.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:16.598 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:16.598 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:18.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1000.441/1500.0
2026-01-21T23:51:19.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:19.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:19.602 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:19.602 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:19.711 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:51:19.712 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:51:02.755401
2026-01-21T23:51:19.712 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:51:02.755401
2026-01-21T23:51:19.712 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:51:19.712 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:51:19.712 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:51:19.712 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:51:19&start_after=2026-01-20T21:51:19&end_after=2026-01-21T21:51:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:51:19.827 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.827 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:51:19.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:51:19.842 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:51:19.842 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:51:19.842 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:51:19.842 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:51:19.842 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -383.842496
2026-01-21T23:51:19.859 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:51:20.097 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 998.409/1500.0
2026-01-21T23:51:21.861 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:51:21.862 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:51:21.862 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:51:21.862083    Obs time: 2026-01-21 21:44:56
2026-01-21T23:51:21.862 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:53:34.137917
2026-01-21T23:51:21.862 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86014
2026-01-21T23:51:21.862 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:51:21.862 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:51:22.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 996.378/1500.0
2026-01-21T23:51:22.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:22.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:22.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:22.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:24.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 994.348/1500.0
2026-01-21T23:51:25.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:25.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:25.610 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:25.610 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:26.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 992.318/1500.0
2026-01-21T23:51:28.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 990.289/1500.0
2026-01-21T23:51:28.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:28.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:28.628 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:28.628 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:28.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:51:30.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 988.257/1500.0
2026-01-21T23:51:31.631 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:31.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:31.633 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:31.633 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:32.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 986.226/1500.0
2026-01-21T23:51:34.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 984.197/1500.0
2026-01-21T23:51:34.636 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:34.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:34.637 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:34.637 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:36.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 982.165/1500.0
2026-01-21T23:51:37.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:37.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:37.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:37.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:38.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 980.135/1500.0
2026-01-21T23:51:38.878 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:51:40.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 978.105/1500.0
2026-01-21T23:51:40.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:40.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:40.663 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:40.663 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:42.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 976.074/1500.0
2026-01-21T23:51:43.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:43.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:43.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:43.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:44.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 974.045/1500.0
2026-01-21T23:51:46.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 972.015/1500.0
2026-01-21T23:51:46.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:46.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:46.687 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:46.687 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:48.523 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 969.984/1500.0
2026-01-21T23:51:48.885 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:51:49.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:49.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:49.689 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:49.689 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:50.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 967.952/1500.0
2026-01-21T23:51:52.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 965.922/1500.0
2026-01-21T23:51:52.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:52.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:51:52.693 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:52.693 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:54.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 963.892/1500.0
2026-01-21T23:51:55.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:55.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:51:55.717 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:55.717 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:51:56.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 961.861/1500.0
2026-01-21T23:51:58.675 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 959.831/1500.0
2026-01-21T23:51:58.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:51:58.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:51:58.718 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:51:58.718 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:51:58.896 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:52:00.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 957.8/1500.0
2026-01-21T23:52:01.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:01.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:01.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:01.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:02.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 955.77/1500.0
2026-01-21T23:52:04.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:04.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:04.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:04.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:04.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 953.741/1500.0
2026-01-21T23:52:06.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 951.709/1500.0
2026-01-21T23:52:07.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:07.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:07.780 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:07.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:08.827 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 949.679/1500.0
2026-01-21T23:52:08.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:52:10.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:10.784 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:52:10.784 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:10.784 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:52:10.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 947.649/1500.0
2026-01-21T23:52:12.888 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 945.618/1500.0
2026-01-21T23:52:13.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:13.803 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:52:13.803 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:13.803 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:14.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 943.587/1500.0
2026-01-21T23:52:16.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:16.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:16.807 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:16.807 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:16.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 941.557/1500.0
2026-01-21T23:52:18.913 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:52:18.914 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:52:02.955978
2026-01-21T23:52:18.914 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:52:02.955978
2026-01-21T23:52:18.914 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:52:18.914 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:52:18.914 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:52:18.914 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:52:18&start_after=2026-01-20T21:52:18&end_after=2026-01-21T21:52:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:52:18.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 939.527/1500.0
2026-01-21T23:52:19.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.037 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.042 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:52:19.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:52:19.046 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:52:19.047 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:52:19.047 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:52:19.047 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:52:19.047 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -443.047163
2026-01-21T23:52:19.047 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:52:19.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:19.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:19.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:19.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:21.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 937.496/1500.0
2026-01-21T23:52:21.049 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:52:21.066 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:52:21.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:52:21.066097    Obs time: 2026-01-21 21:44:56
2026-01-21T23:52:21.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:52:34.933903
2026-01-21T23:52:21.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85954
2026-01-21T23:52:21.066 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:52:21.066 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:52:22.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:22.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:22.857 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:22.857 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:23.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 935.466/1500.0
2026-01-21T23:52:25.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 933.435/1500.0
2026-01-21T23:52:25.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:25.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:25.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:25.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:27.101 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 931.405/1500.0
2026-01-21T23:52:28.071 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:52:28.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:28.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:28.885 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:28.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:29.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 929.374/1500.0
2026-01-21T23:52:31.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 927.345/1500.0
2026-01-21T23:52:31.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:31.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:31.905 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:31.905 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:33.192 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 925.314/1500.0
2026-01-21T23:52:34.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:34.907 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:34.907 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:34.907 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:35.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 923.283/1500.0
2026-01-21T23:52:37.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 921.253/1500.0
2026-01-21T23:52:37.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:37.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:37.927 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:37.927 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:38.081 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:52:39.284 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 919.222/1500.0
2026-01-21T23:52:40.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:40.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:40.931 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:40.931 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:41.314 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 917.193/1500.0
2026-01-21T23:52:43.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 915.161/1500.0
2026-01-21T23:52:43.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:43.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:43.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:43.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:45.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 913.131/1500.0
2026-01-21T23:52:46.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:46.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:46.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:46.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:47.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 911.101/1500.0
2026-01-21T23:52:48.091 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:52:49.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 909.07/1500.0
2026-01-21T23:52:49.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:49.974 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:49.974 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:49.974 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:51.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 907.039/1500.0
2026-01-21T23:52:52.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:52.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:52.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:52.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:53.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 905.009/1500.0
2026-01-21T23:52:55.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 902.978/1500.0
2026-01-21T23:52:55.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:56.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:56.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:56.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:57.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 900.91/1500.0
2026-01-21T23:52:58.099 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:52:59.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:52:59.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:52:59.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:52:59.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:52:59.664 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 898.842/1500.0
2026-01-21T23:53:01.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 896.812/1500.0
2026-01-21T23:53:02.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:02.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:02.029 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:02.029 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:03.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 894.781/1500.0
2026-01-21T23:53:05.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:05.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:05.033 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:05.033 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:05.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 892.713/1500.0
2026-01-21T23:53:07.900 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 890.645/1500.0
2026-01-21T23:53:08.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:08.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:08.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:08.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:08.108 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:53:09.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 888.577/1500.0
2026-01-21T23:53:11.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:11.059 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:11.059 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:11.059 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:12.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 886.509/1500.0
2026-01-21T23:53:14.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:14.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:14.080 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:14.080 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:14.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 884.44/1500.0
2026-01-21T23:53:16.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 882.371/1500.0
2026-01-21T23:53:17.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:17.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:17.084 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:17.084 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:18.116 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:53:18.138 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:53:03.154651
2026-01-21T23:53:18.138 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:53:03.154651
2026-01-21T23:53:18.138 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:53:18.138 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:53:18.138 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:53:18.138 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:53:18&start_after=2026-01-20T21:53:18&end_after=2026-01-21T21:53:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:53:18.241 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 880.305/1500.0
2026-01-21T23:53:18.252 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.255 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.256 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.258 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:53:18.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:53:18.267 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:53:18.267 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:53:18.267 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:53:18.267 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:53:18.267 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -502.26777
2026-01-21T23:53:18.268 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:53:20.087 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:20.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:20.107 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:20.107 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:20.270 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:53:20.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:53:20.272 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:53:20.272050    Obs time: 2026-01-21 21:44:56
2026-01-21T23:53:20.272 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:51:35.727950
2026-01-21T23:53:20.272 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85895
2026-01-21T23:53:20.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:53:20.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:53:20.309 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 878.237/1500.0
2026-01-21T23:53:22.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 876.169/1500.0
2026-01-21T23:53:23.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:23.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:23.110 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:23.110 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:24.445 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 874.098/1500.0
2026-01-21T23:53:26.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:26.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:26.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:26.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:26.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 872.03/1500.0
2026-01-21T23:53:27.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:53:28.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 869.964/1500.0
2026-01-21T23:53:29.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:29.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:29.138 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:29.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:30.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 867.896/1500.0
2026-01-21T23:53:32.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:32.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:32.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:32.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:32.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 865.827/1500.0
2026-01-21T23:53:34.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 863.759/1500.0
2026-01-21T23:53:35.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:35.164 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:35.164 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:35.164 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:36.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 861.689/1500.0
2026-01-21T23:53:37.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:53:38.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:38.184 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:38.184 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:38.184 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:38.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 859.621/1500.0
2026-01-21T23:53:40.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 857.553/1500.0
2026-01-21T23:53:41.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:41.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:41.186 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:41.186 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:42.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 855.522/1500.0
2026-01-21T23:53:44.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:44.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:44.205 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:44.205 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:45.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 853.493/1500.0
2026-01-21T23:53:47.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 851.425/1500.0
2026-01-21T23:53:47.208 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:47.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:47.209 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:47.209 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:47.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:53:49.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 849.393/1500.0
2026-01-21T23:53:50.212 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:50.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:50.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:50.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:51.219 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 847.324/1500.0
2026-01-21T23:53:53.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:53.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:53.229 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:53.229 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:53.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 845.256/1500.0
2026-01-21T23:53:55.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 843.189/1500.0
2026-01-21T23:53:56.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:56.251 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:56.251 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:56.251 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:57.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:53:57.424 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 841.121/1500.0
2026-01-21T23:53:59.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:53:59.255 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:53:59.255 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:53:59.255 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:53:59.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 839.053/1500.0
2026-01-21T23:54:01.561 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 836.985/1500.0
2026-01-21T23:54:02.258 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:02.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:54:02.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:02.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:54:03.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 834.916/1500.0
2026-01-21T23:54:05.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:05.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:54:05.278 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:05.278 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:05.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 832.847/1500.0
2026-01-21T23:54:07.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:54:07.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 830.816/1500.0
2026-01-21T23:54:08.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:08.299 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:08.299 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:08.299 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:09.796 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 828.749/1500.0
2026-01-21T23:54:11.303 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:11.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:11.304 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:11.304 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:11.864 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 826.68/1500.0
2026-01-21T23:54:13.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 824.613/1500.0
2026-01-21T23:54:14.307 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:14.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:14.322 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:14.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:16.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 822.545/1500.0
2026-01-21T23:54:17.323 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:54:17.324 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:54:03.354193
2026-01-21T23:54:17.324 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:54:03.354193
2026-01-21T23:54:17.325 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:54:17.325 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:54:17.325 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:54:17.325 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:54:17&start_after=2026-01-20T21:54:17&end_after=2026-01-21T21:54:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:54:17.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:17.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:17.326 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:17.327 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:17.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.455 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.456 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:54:17.459 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:54:17.459 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:54:17.459 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:54:17.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:54:17.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:54:17.460 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -561.460102
2026-01-21T23:54:17.460 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:54:18.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 820.476/1500.0
2026-01-21T23:54:19.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:54:19.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:54:19.462 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:54:19.462443    Obs time: 2026-01-21 21:44:56
2026-01-21T23:54:19.462 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:50:36.537557
2026-01-21T23:54:19.462 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85836
2026-01-21T23:54:19.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:54:19.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:54:20.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 818.444/1500.0
2026-01-21T23:54:20.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:20.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:20.348 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:20.348 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:22.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 816.377/1500.0
2026-01-21T23:54:23.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:23.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:54:23.353 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:23.353 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:54:24.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 814.347/1500.0
2026-01-21T23:54:26.266 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 812.278/1500.0
2026-01-21T23:54:26.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:26.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:54:26.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:26.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:26.468 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:54:28.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 810.209/1500.0
2026-01-21T23:54:29.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:29.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:29.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:29.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:30.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 808.141/1500.0
2026-01-21T23:54:32.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:32.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:32.401 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:32.401 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:32.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 806.073/1500.0
2026-01-21T23:54:34.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 804.005/1500.0
2026-01-21T23:54:35.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:35.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:35.405 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:35.405 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:36.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:54:36.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 801.937/1500.0
2026-01-21T23:54:38.408 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:38.424 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:54:38.424 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:38.424 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:54:38.676 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 799.869/1500.0
2026-01-21T23:54:40.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 797.801/1500.0
2026-01-21T23:54:41.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:41.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:54:41.429 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:41.429 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:42.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 795.732/1500.0
2026-01-21T23:54:44.432 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:44.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:54:44.453 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:44.453 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:54:44.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 793.665/1500.0
2026-01-21T23:54:46.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:54:46.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 791.597/1500.0
2026-01-21T23:54:47.456 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:47.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:54:47.457 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:47.457 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:49.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 789.527/1500.0
2026-01-21T23:54:50.460 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:50.480 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:50.480 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:50.480 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:51.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 787.459/1500.0
2026-01-21T23:54:53.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 785.391/1500.0
2026-01-21T23:54:53.483 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:53.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:53.484 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:53.484 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:55.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 783.322/1500.0
2026-01-21T23:54:56.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:56.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:54:56.507 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:54:56.508 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:56.508 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:54:57.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 781.254/1500.0
2026-01-21T23:54:59.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 779.148/1500.0
2026-01-21T23:54:59.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:54:59.511 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:54:59.511 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:54:59.511 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-21T23:55:01.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 777.081/1500.0
2026-01-21T23:55:02.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:02.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-21T23:55:02.531 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:02.531 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:03.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 775.049/1500.0
2026-01-21T23:55:05.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:05.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:55:05.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:05.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:55:05.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 772.981/1500.0
2026-01-21T23:55:06.505 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:55:07.631 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 770.913/1500.0
2026-01-21T23:55:08.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:08.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:55:08.555 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:08.555 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:09.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 768.845/1500.0
2026-01-21T23:55:11.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:11.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:11.558 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:11.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:11.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 766.814/1500.0
2026-01-21T23:55:13.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 764.747/1500.0
2026-01-21T23:55:14.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:14.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:14.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:14.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:15.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 762.679/1500.0
2026-01-21T23:55:16.514 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:55:16.528 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:55:03.553932
2026-01-21T23:55:16.528 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:55:03.553932
2026-01-21T23:55:16.528 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:55:16.529 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:55:16.529 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:55:16.529 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:55:16&start_after=2026-01-20T21:55:16&end_after=2026-01-21T21:55:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:55:16.677 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.680 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.682 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.683 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.686 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.690 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:55:16.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:55:16.692 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:55:16.693 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-21T23:55:16.693 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:55:16.693 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:44:56Z
2026-01-21T23:55:16.693 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -620.693262
2026-01-21T23:55:16.694 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-21T23:55:17.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:17.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:17.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:17.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:17.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 760.611/1500.0
2026-01-21T23:55:18.696 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-21T23:55:18.715 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-21T23:55:18.715 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 21:55:18.715811    Obs time: 2026-01-21 21:44:56
2026-01-21T23:55:18.715 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:49:37.284189
2026-01-21T23:55:18.715 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85777
2026-01-21T23:55:18.715 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:44:56Z', 'guide_off', 'config_id 13536', 'config_status_id 17511618', 'update_OCS 17511618 ATTEMPTED', 'run_script setup_std_star_EG21_17232865_13490_13536.json', 'run_script std_star_EG21_17232865_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511618 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:56:10Z', 'run_script arc_flat_lamp_off.json']
2026-01-21T23:55:18.715 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-21T23:55:20.003 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 758.543/1500.0
2026-01-21T23:55:20.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:20.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:20.617 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:20.617 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:22.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 756.473/1500.0
2026-01-21T23:55:23.620 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:23.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:23.621 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:23.621 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:24.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 754.405/1500.0
2026-01-21T23:55:25.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:55:26.207 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 752.337/1500.0
2026-01-21T23:55:26.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:26.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:26.643 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:26.643 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:28.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 750.269/1500.0
2026-01-21T23:55:29.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:29.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:29.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:29.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:30.344 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 748.201/1500.0
2026-01-21T23:55:32.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 746.132/1500.0
2026-01-21T23:55:32.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:32.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:32.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:32.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:34.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 744.026/1500.0
2026-01-21T23:55:35.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:35.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:35.671 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:35.671 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:35.733 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:55:36.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 741.958/1500.0
2026-01-21T23:55:38.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 739.89/1500.0
2026-01-21T23:55:38.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:38.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:38.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:38.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:40.722 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 737.822/1500.0
2026-01-21T23:55:41.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:41.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:41.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:41.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:42.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 735.753/1500.0
2026-01-21T23:55:44.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:44.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:44.718 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:44.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:44.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 733.685/1500.0
2026-01-21T23:55:45.740 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:55:46.927 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 731.617/1500.0
2026-01-21T23:55:47.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:47.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:47.722 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:47.722 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:48.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 729.549/1500.0
2026-01-21T23:55:50.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:50.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:50.746 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:50.746 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:51.063 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 727.481/1500.0
2026-01-21T23:55:53.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 725.413/1500.0
2026-01-21T23:55:53.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:53.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:55:53.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:53.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-21T23:55:55.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 723.345/1500.0
2026-01-21T23:55:55.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:55:56.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:56.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-21T23:55:56.776 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:56.776 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:55:57.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 721.277/1500.0
2026-01-21T23:55:59.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 719.208/1500.0
2026-01-21T23:55:59.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:55:59.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:55:59.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:55:59.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:01.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 717.141/1500.0
2026-01-21T23:56:02.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:02.802 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:02.802 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:02.802 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:03.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 715.071/1500.0
2026-01-21T23:56:05.541 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 713.003/1500.0
2026-01-21T23:56:05.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:56:05.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:05.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:05.806 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:05.806 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:07.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 710.935/1500.0
2026-01-21T23:56:08.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:08.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:08.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:08.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:09.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 708.867/1500.0
2026-01-21T23:56:11.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 706.798/1500.0
2026-01-21T23:56:11.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:11.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:11.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:11.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:13.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 704.73/1500.0
2026-01-21T23:56:14.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:14.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:14.839 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:14.839 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:15.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:56:15.769 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:56:03.753168
2026-01-21T23:56:15.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:56:03.753168
2026-01-21T23:56:15.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:56:15.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:56:15.769 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:56:15.769 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:56:15&start_after=2026-01-20T21:56:15&end_after=2026-01-21T21:56:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:56:15.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 702.699/1500.0
2026-01-21T23:56:15.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:56:15.885 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.886 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.888 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:56:15.888 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:56:15.889 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:56:15.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.893 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:56:15.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:56:15.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:56:15.898 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:56:15.898 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-21T23:56:15.898 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:56:15.898 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:45:00Z
2026-01-21T23:56:15.898 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2924.101252
2026-01-21T23:56:15.898 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:56:17.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:17.843 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:17.843 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:17.843 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:17.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 700.633/1500.0
2026-01-21T23:56:19.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 698.601/1500.0
2026-01-21T23:56:20.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:20.864 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:56:20.864 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:20.865 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:56:21.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 696.57/1500.0
2026-01-21T23:56:23.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:23.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:56:23.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:23.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:24.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 694.502/1500.0
2026-01-21T23:56:24.906 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:56:26.110 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 692.434/1500.0
2026-01-21T23:56:26.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:26.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:26.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:26.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:28.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 690.365/1500.0
2026-01-21T23:56:29.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:29.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:29.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:29.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:30.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 688.297/1500.0
2026-01-21T23:56:32.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 686.229/1500.0
2026-01-21T23:56:32.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:32.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:32.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:32.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:34.383 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 684.161/1500.0
2026-01-21T23:56:34.913 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:56:35.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:35.940 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:35.940 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:35.940 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:36.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 682.092/1500.0
2026-01-21T23:56:38.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 680.024/1500.0
2026-01-21T23:56:38.943 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:38.965 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:38.965 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:38.965 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:40.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 677.957/1500.0
2026-01-21T23:56:41.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:41.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:41.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:41.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:42.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 675.888/1500.0
2026-01-21T23:56:44.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 673.82/1500.0
2026-01-21T23:56:44.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:56:44.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:44.992 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:56:44.992 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:44.992 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:56:46.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 671.751/1500.0
2026-01-21T23:56:47.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:47.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:56:47.996 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:47.997 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:48.861 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 669.683/1500.0
2026-01-21T23:56:50.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 667.615/1500.0
2026-01-21T23:56:51.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:51.016 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:51.016 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:51.016 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:52.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 665.547/1500.0
2026-01-21T23:56:54.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:54.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:56:54.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:54.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:56:54.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:56:55.065 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 663.478/1500.0
2026-01-21T23:56:57.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:56:57.043 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:56:57.043 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:56:57.043 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:56:57.096 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 661.41/1500.0
2026-01-21T23:56:59.127 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 659.381/1500.0
2026-01-21T23:57:00.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:00.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:57:00.047 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:00.047 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:01.157 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 657.349/1500.0
2026-01-21T23:57:03.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:03.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:03.073 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:03.073 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:03.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 655.319/1500.0
2026-01-21T23:57:04.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:57:05.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 653.251/1500.0
2026-01-21T23:57:06.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:06.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:57:06.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:06.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:57:07.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 651.182/1500.0
2026-01-21T23:57:09.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:09.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:57:09.079 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:09.079 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:09.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 649.115/1500.0
2026-01-21T23:57:11.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 647.045/1500.0
2026-01-21T23:57:12.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:12.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:12.083 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:12.083 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:13.568 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 644.975/1500.0
2026-01-21T23:57:14.940 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:57:14.942 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:57:03.952316
2026-01-21T23:57:14.942 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:57:03.952316
2026-01-21T23:57:14.943 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:57:14.943 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:57:14.943 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:57:14.944 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:57:14&start_after=2026-01-20T21:57:14&end_after=2026-01-21T21:57:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:57:15.073 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:57:15.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.085 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:15.093 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:57:15.096 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:57:15.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:57:15.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:57:15.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:15.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:15.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:15.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:57:15.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:57:15.118 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:57:15.118 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-21T23:57:15.118 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:57:15.118 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:45:00Z
2026-01-21T23:57:15.118 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2864.881455
2026-01-21T23:57:15.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:57:15.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 642.909/1500.0
2026-01-21T23:57:17.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 640.839/1500.0
2026-01-21T23:57:18.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:18.118 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:18.118 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:18.118 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:19.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 638.772/1500.0
2026-01-21T23:57:21.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:21.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:21.142 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:21.142 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:21.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 636.629/1500.0
2026-01-21T23:57:23.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 634.597/1500.0
2026-01-21T23:57:24.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:57:24.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:24.148 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:24.148 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:24.148 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:25.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 632.566/1500.0
2026-01-21T23:57:27.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:27.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:57:27.174 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:27.174 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:57:27.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 630.535/1500.0
2026-01-21T23:57:30.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 628.505/1500.0
2026-01-21T23:57:30.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:30.179 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:57:30.179 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:30.179 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:32.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 626.474/1500.0
2026-01-21T23:57:33.183 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:33.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:33.203 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:33.203 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:34.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 624.368/1500.0
2026-01-21T23:57:34.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:57:36.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 622.338/1500.0
2026-01-21T23:57:36.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:36.208 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:36.209 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:36.209 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:38.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 620.309/1500.0
2026-01-21T23:57:39.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:39.230 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:39.230 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:39.230 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:40.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 618.278/1500.0
2026-01-21T23:57:42.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:42.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:57:42.281 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:42.281 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:57:42.334 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 616.199/1500.0
2026-01-21T23:57:44.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:57:44.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 614.141/1500.0
2026-01-21T23:57:45.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:45.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:57:45.306 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:45.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:46.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 612.111/1500.0
2026-01-21T23:57:48.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:48.311 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:48.311 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:48.311 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:48.425 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 610.081/1500.0
2026-01-21T23:57:50.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 608.051/1500.0
2026-01-21T23:57:51.315 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:51.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:51.333 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:51.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:52.486 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 606.02/1500.0
2026-01-21T23:57:54.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:57:54.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:54.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:54.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:54.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:54.516 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 603.989/1500.0
2026-01-21T23:57:56.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 601.959/1500.0
2026-01-21T23:57:57.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:57:57.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:57:57.362 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:57:57.362 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:57:58.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 599.928/1500.0
2026-01-21T23:58:00.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:00.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:00.368 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:00.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:00.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 597.898/1500.0
2026-01-21T23:58:02.638 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 595.868/1500.0
2026-01-21T23:58:03.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:03.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-21T23:58:03.395 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:03.395 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-21T23:58:04.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:58:04.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 593.837/1500.0
2026-01-21T23:58:06.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:06.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-21T23:58:06.401 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:06.401 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:06.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 591.809/1500.0
2026-01-21T23:58:08.729 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 589.777/1500.0
2026-01-21T23:58:09.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:09.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:09.423 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:09.423 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:10.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 587.746/1500.0
2026-01-21T23:58:12.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:12.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:12.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:12.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:12.789 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 585.718/1500.0
2026-01-21T23:58:14.179 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:58:14.199 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:58:04.157160
2026-01-21T23:58:14.199 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:58:04.157160
2026-01-21T23:58:14.199 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:58:14.199 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:58:14.199 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:58:14.199 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:58:14&start_after=2026-01-20T21:58:14&end_after=2026-01-21T21:58:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:58:14.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:58:14.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:58:14.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:58:14.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:58:14.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.353 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.356 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:58:14.356 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:58:14.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:58:14.359 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:58:14.359 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-21T23:58:14.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:58:14.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:45:00Z
2026-01-21T23:58:14.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2805.640633
2026-01-21T23:58:14.359 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:58:14.819 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 583.687/1500.0
2026-01-21T23:58:15.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:15.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:15.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:15.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:16.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 581.657/1500.0
2026-01-21T23:58:18.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:18.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:18.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:18.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:18.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 579.626/1500.0
2026-01-21T23:58:20.910 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 577.596/1500.0
2026-01-21T23:58:21.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:21.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:21.469 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:21.469 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:22.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 575.565/1500.0
2026-01-21T23:58:23.366 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:58:24.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:24.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:58:24.473 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:24.473 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:58:24.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 573.535/1500.0
2026-01-21T23:58:27.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 571.505/1500.0
2026-01-21T23:58:27.476 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:27.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:58:27.477 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:27.477 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:29.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 569.474/1500.0
2026-01-21T23:58:30.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:30.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:30.481 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:30.481 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:31.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 567.444/1500.0
2026-01-21T23:58:33.093 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 565.413/1500.0
2026-01-21T23:58:33.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:58:33.482 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:33.482 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:58:33.482 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:33.482 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:58:35.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 563.383/1500.0
2026-01-21T23:58:36.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:36.503 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:58:36.503 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:36.503 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:37.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 561.352/1500.0
2026-01-21T23:58:39.184 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 559.322/1500.0
2026-01-21T23:58:39.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:39.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:39.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:39.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:41.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 557.293/1500.0
2026-01-21T23:58:42.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:42.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:42.543 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:42.543 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:43.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 555.262/1500.0
2026-01-21T23:58:43.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:58:45.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 553.231/1500.0
2026-01-21T23:58:45.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:45.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:45.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:45.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:47.306 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 551.2/1500.0
2026-01-21T23:58:48.552 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:48.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:48.570 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:48.570 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:49.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.17/1500.0
2026-01-21T23:58:51.367 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.139/1500.0
2026-01-21T23:58:51.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:51.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:51.574 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:51.574 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:53.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:58:53.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.109/1500.0
2026-01-21T23:58:54.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:54.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:54.595 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:54.595 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:55.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.079/1500.0
2026-01-21T23:58:57.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.048/1500.0
2026-01-21T23:58:57.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:58:57.620 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:58:57.620 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:58:57.620 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:58:59.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 539.018/1500.0
2026-01-21T23:59:00.623 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:00.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:00.624 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:00.624 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:01.519 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 536.989/1500.0
2026-01-21T23:59:03.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-21T23:59:03.549 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 534.957/1500.0
2026-01-21T23:59:03.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:03.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:03.628 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:03.628 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:05.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 532.927/1500.0
2026-01-21T23:59:06.631 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:06.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:06.646 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:06.646 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:07.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 530.896/1500.0
2026-01-21T23:59:09.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 528.866/1500.0
2026-01-21T23:59:09.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:09.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:09.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:09.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:11.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 526.835/1500.0
2026-01-21T23:59:12.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:12.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:12.671 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:12.671 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:13.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-21T23:59:13.408 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-21T23:59:04.363935
2026-01-21T23:59:13.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-21T23:59:04.363935
2026-01-21T23:59:13.408 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-21T23:59:13.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-21T23:59:13.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-21T23:59:13.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T21:59:13&start_after=2026-01-20T21:59:13&end_after=2026-01-21T21:59:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-21T23:59:13.526 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:59:13.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.529 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:59:13.531 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:59:13.532 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:59:13.533 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.534 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.537 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.538 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:59:13.539 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-21T23:59:13.541 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-21T23:59:13.542 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-21T23:59:13.542 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-21T23:59:13.542 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-21T23:59:13.542 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:45:00Z
2026-01-21T23:59:13.542 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2746.457676
2026-01-21T23:59:13.542 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-21T23:59:13.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 524.805/1500.0
2026-01-21T23:59:15.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:15.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:15.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:15.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:15.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 522.774/1500.0
2026-01-21T23:59:17.762 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 520.744/1500.0
2026-01-21T23:59:18.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:18.715 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:18.715 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:18.715 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:19.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 518.714/1500.0
2026-01-21T23:59:21.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:21.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:21.718 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:21.718 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:21.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 516.685/1500.0
2026-01-21T23:59:22.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-21T23:59:23.853 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 514.653/1500.0
2026-01-21T23:59:24.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:24.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:24.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:24.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:25.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 512.622/1500.0
2026-01-21T23:59:27.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:27.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:27.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:27.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:27.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 510.592/1500.0
2026-01-21T23:59:29.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 508.561/1500.0
2026-01-21T23:59:30.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:30.751 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:30.751 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:30.751 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:31.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 506.531/1500.0
2026-01-21T23:59:32.559 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-21T23:59:33.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:33.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-21T23:59:33.770 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:33.770 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-21T23:59:34.005 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 504.501/1500.0
2026-01-21T23:59:36.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 502.47/1500.0
2026-01-21T23:59:36.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:36.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-21T23:59:36.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:36.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:38.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 500.441/1500.0
2026-01-21T23:59:39.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:39.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:39.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:39.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:40.097 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 498.408/1500.0
2026-01-21T23:59:42.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 496.379/1500.0
2026-01-21T23:59:42.569 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-21T23:59:42.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:42.800 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:42.800 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:42.800 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:44.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 494.349/1500.0
2026-01-21T23:59:45.803 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:45.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:45.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:45.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:46.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 492.318/1500.0
2026-01-21T23:59:48.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 490.249/1500.0
2026-01-21T23:59:48.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:48.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:48.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:48.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:50.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 488.181/1500.0
2026-01-21T23:59:51.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:51.852 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:51.852 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:51.852 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:52.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 486.15/1500.0
2026-01-21T23:59:52.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-21T23:59:54.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 484.121/1500.0
2026-01-21T23:59:54.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:54.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:54.874 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:54.874 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:56.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 482.089/1500.0
2026-01-21T23:59:57.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-21T23:59:57.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-21T23:59:57.878 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-21T23:59:57.878 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-21T23:59:58.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 480.06/1500.0
2026-01-22T00:00:00.516 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 478.029/1500.0
2026-01-22T00:00:00.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:00.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:00.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:00.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:02.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 475.961/1500.0
2026-01-22T00:00:02.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:00:03.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:03.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:03.905 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:03.905 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:04.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 473.892/1500.0
2026-01-22T00:00:06.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 471.825/1500.0
2026-01-22T00:00:06.908 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:06.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:06.927 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:06.927 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:08.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 469.793/1500.0
2026-01-22T00:00:09.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:09.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:09.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:09.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:10.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 467.762/1500.0
2026-01-22T00:00:12.599 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:00:12.617 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:00:04.563819
2026-01-22T00:00:12.617 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:00:04.563819
2026-01-22T00:00:12.617 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:00:12.617 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:00:12.617 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:00:12.617 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:00:12&start_after=2026-01-20T22:00:12&end_after=2026-01-21T22:00:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:00:12.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.789 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.794 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:00:12.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:00:12.799 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:00:12.799 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:00:12.799 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:00:12.799 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:00:12.799 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -211.799351
2026-01-22T00:00:12.800 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:00:12.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 465.698/1500.0
2026-01-22T00:00:12.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:12.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:12.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:12.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:14.801 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:00:14.822 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:00:14.822 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:00:14.822102    Obs time: 2026-01-21 21:56:41
2026-01-22T00:00:14.822 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:26.177898
2026-01-22T00:00:14.822 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86186
2026-01-22T00:00:14.822 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:00:14.822 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:00:14.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 463.665/1500.0
2026-01-22T00:00:15.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:15.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:15.980 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:15.980 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:16.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 461.633/1500.0
2026-01-22T00:00:18.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 459.604/1500.0
2026-01-22T00:00:18.983 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:19.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:19.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:19.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:20.935 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 457.571/1500.0
2026-01-22T00:00:21.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:00:22.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:22.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:22.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:22.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:22.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 455.541/1500.0
2026-01-22T00:00:24.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 453.51/1500.0
2026-01-22T00:00:25.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:25.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:25.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:25.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:27.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 451.48/1500.0
2026-01-22T00:00:28.028 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:28.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:28.047 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:28.047 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:29.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 449.449/1500.0
2026-01-22T00:00:31.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:31.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:31.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:31.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:31.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 447.419/1500.0
2026-01-22T00:00:31.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:00:33.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 445.388/1500.0
2026-01-22T00:00:34.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:34.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:34.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:34.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:35.148 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 443.358/1500.0
2026-01-22T00:00:37.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:37.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:37.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:37.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:37.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 441.327/1500.0
2026-01-22T00:00:39.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 439.297/1500.0
2026-01-22T00:00:40.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:40.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:40.098 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:40.098 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:41.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 437.266/1500.0
2026-01-22T00:00:41.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:00:43.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:43.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:43.122 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:43.122 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:43.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 435.236/1500.0
2026-01-22T00:00:45.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 433.206/1500.0
2026-01-22T00:00:46.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:46.142 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:00:46.143 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:46.143 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:00:47.331 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 431.175/1500.0
2026-01-22T00:00:49.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:49.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-22T00:00:49.163 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:49.163 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:00:49.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 429.144/1500.0
2026-01-22T00:00:51.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 427.114/1500.0
2026-01-22T00:00:51.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:00:52.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:52.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:00:52.167 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:52.167 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:53.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 425.084/1500.0
2026-01-22T00:00:55.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:55.188 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:55.188 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:55.188 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:55.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 423.053/1500.0
2026-01-22T00:00:57.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 421.025/1500.0
2026-01-22T00:00:58.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:00:58.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:00:58.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:00:58.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:00:59.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 418.993/1500.0
2026-01-22T00:01:01.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:01.212 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:01.212 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:01.212 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:01.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 416.964/1500.0
2026-01-22T00:01:01.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:01:03.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 414.931/1500.0
2026-01-22T00:01:04.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:04.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:04.231 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:04.231 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:05.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 412.901/1500.0
2026-01-22T00:01:07.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:07.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:07.252 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:07.253 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:07.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 410.871/1500.0
2026-01-22T00:01:09.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 408.84/1500.0
2026-01-22T00:01:10.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:10.271 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:10.271 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:10.271 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:11.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 406.81/1500.0
2026-01-22T00:01:11.872 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:01:11.873 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:01:04.764984
2026-01-22T00:01:11.873 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:01:04.764984
2026-01-22T00:01:11.873 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:01:11.873 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:01:11.873 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:01:11.873 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:01:11&start_after=2026-01-20T22:01:11&end_after=2026-01-21T22:01:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:01:12.019 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.032 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.034 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:01:12.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:01:12.037 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:01:12.037 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:01:12.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:01:12.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:01:12.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -271.037921
2026-01-22T00:01:12.038 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:01:13.275 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:13.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:13.291 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:13.291 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:13.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.781/1500.0
2026-01-22T00:01:14.040 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:01:14.041 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:01:14.042 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:01:14.041989    Obs time: 2026-01-21 21:56:41
2026-01-22T00:01:14.042 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:55:26.958011
2026-01-22T00:01:14.042 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86126
2026-01-22T00:01:14.042 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:01:14.042 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:01:15.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 402.749/1500.0
2026-01-22T00:01:16.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:16.295 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:16.295 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:16.295 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:17.788 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 400.719/1500.0
2026-01-22T00:01:19.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:19.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:19.316 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:19.316 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:19.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 398.688/1500.0
2026-01-22T00:01:21.049 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:01:21.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 396.658/1500.0
2026-01-22T00:01:22.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:22.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:22.336 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:22.336 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:23.879 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 394.627/1500.0
2026-01-22T00:01:25.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:25.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:25.362 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:25.362 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:25.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 392.597/1500.0
2026-01-22T00:01:27.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 390.568/1500.0
2026-01-22T00:01:28.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:28.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:28.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:28.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:29.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 388.537/1500.0
2026-01-22T00:01:31.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:01:31.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:31.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:31.390 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:31.390 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:32.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 386.505/1500.0
2026-01-22T00:01:34.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 384.477/1500.0
2026-01-22T00:01:34.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:34.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:34.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:34.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:36.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 382.445/1500.0
2026-01-22T00:01:37.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:37.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:37.417 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:37.417 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:38.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 380.414/1500.0
2026-01-22T00:01:40.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 378.384/1500.0
2026-01-22T00:01:40.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:40.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:40.441 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:40.441 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:41.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:01:42.153 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 376.353/1500.0
2026-01-22T00:01:43.444 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:43.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:43.461 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:43.461 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:44.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 374.323/1500.0
2026-01-22T00:01:46.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 372.293/1500.0
2026-01-22T00:01:46.464 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:46.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:46.465 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:46.465 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:48.244 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 370.262/1500.0
2026-01-22T00:01:49.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:49.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:49.484 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:49.484 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:50.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 368.233/1500.0
2026-01-22T00:01:51.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:01:52.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 366.202/1500.0
2026-01-22T00:01:52.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:52.485 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:52.485 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:52.486 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:54.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 364.171/1500.0
2026-01-22T00:01:55.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:55.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:55.504 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:55.504 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:01:56.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 362.141/1500.0
2026-01-22T00:01:58.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 360.112/1500.0
2026-01-22T00:01:58.507 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:01:58.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:01:58.525 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:01:58.525 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:00.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 358.08/1500.0
2026-01-22T00:02:01.083 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:02:01.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:01.551 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:01.551 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:01.551 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:02.457 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 356.049/1500.0
2026-01-22T00:02:04.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 354.019/1500.0
2026-01-22T00:02:04.554 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:04.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:04.555 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:04.555 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:06.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 351.988/1500.0
2026-01-22T00:02:07.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:07.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:07.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:07.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:08.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 349.958/1500.0
2026-01-22T00:02:10.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:10.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 347.928/1500.0
2026-01-22T00:02:10.596 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:10.596 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:10.596 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:11.093 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:02:11.094 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:02:04.963458
2026-01-22T00:02:11.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:02:04.963458
2026-01-22T00:02:11.094 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:02:11.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:02:11.094 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:02:11.094 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:02:11&start_after=2026-01-20T22:02:11&end_after=2026-01-21T22:02:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:02:11.206 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.208 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.215 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.215 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:02:11.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:02:11.223 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:02:11.224 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:02:11.224 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:02:11.224 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:02:11.224 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -330.224205
2026-01-22T00:02:11.225 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:02:12.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 345.897/1500.0
2026-01-22T00:02:13.225 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:02:13.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:02:13.242 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:02:13.242725    Obs time: 2026-01-21 21:56:41
2026-01-22T00:02:13.242 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:54:27.757275
2026-01-22T00:02:13.242 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86067
2026-01-22T00:02:13.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:02:13.242 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:02:13.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:13.600 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:13.600 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:13.600 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:14.639 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 343.867/1500.0
2026-01-22T00:02:16.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:16.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:16.621 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:16.621 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:16.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 341.836/1500.0
2026-01-22T00:02:18.700 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 339.806/1500.0
2026-01-22T00:02:19.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:19.623 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:19.623 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:19.623 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:20.250 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:02:20.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 337.777/1500.0
2026-01-22T00:02:22.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:22.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:22.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:22.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:22.761 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 335.745/1500.0
2026-01-22T00:02:24.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 333.716/1500.0
2026-01-22T00:02:25.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:25.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:25.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:25.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:26.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 331.685/1500.0
2026-01-22T00:02:28.651 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:28.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:28.652 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:28.652 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:28.890 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 329.617/1500.0
2026-01-22T00:02:30.260 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:02:30.920 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 327.586/1500.0
2026-01-22T00:02:31.655 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:31.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:02:31.673 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:31.673 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T00:02:32.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 325.557/1500.0
2026-01-22T00:02:34.676 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:34.696 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0010000000000047748
2026-01-22T00:02:34.696 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:34.696 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:02:34.981 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 323.525/1500.0
2026-01-22T00:02:37.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 321.494/1500.0
2026-01-22T00:02:37.699 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:37.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:02:37.716 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:37.716 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:39.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 319.465/1500.0
2026-01-22T00:02:40.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:02:40.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:40.720 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:40.720 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:40.720 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:41.073 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 317.433/1500.0
2026-01-22T00:02:43.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 315.404/1500.0
2026-01-22T00:02:43.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:43.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:43.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:43.742 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:45.134 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 313.372/1500.0
2026-01-22T00:02:46.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:46.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:46.746 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:46.746 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:47.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 311.342/1500.0
2026-01-22T00:02:49.232 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 309.274/1500.0
2026-01-22T00:02:49.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:49.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:49.769 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:49.769 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:50.278 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:02:51.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 307.244/1500.0
2026-01-22T00:02:52.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:52.791 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:52.791 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:52.791 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:53.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.213/1500.0
2026-01-22T00:02:55.323 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 303.183/1500.0
2026-01-22T00:02:55.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:55.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:55.813 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:55.813 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:57.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.152/1500.0
2026-01-22T00:02:58.816 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:02:58.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:02:58.817 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:02:58.817 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:02:59.422 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.085/1500.0
2026-01-22T00:03:00.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:03:01.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.055/1500.0
2026-01-22T00:03:01.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:01.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:01.835 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:01.835 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:03.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.025/1500.0
2026-01-22T00:03:04.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:04.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:04.837 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:04.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:05.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 292.993/1500.0
2026-01-22T00:03:07.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 290.962/1500.0
2026-01-22T00:03:07.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:07.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:07.861 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:07.861 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:09.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 288.933/1500.0
2026-01-22T00:03:10.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:03:10.312 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:03:05.165946
2026-01-22T00:03:10.312 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:03:05.165946
2026-01-22T00:03:10.312 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:03:10.312 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:03:10.313 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:03:10.313 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:03:10&start_after=2026-01-20T22:03:10&end_after=2026-01-21T22:03:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:03:10.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.624 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.624 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.626 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.628 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.629 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.630 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.631 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.634 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.638 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:03:10.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:03:10.640 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:03:10.640 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:03:10.640 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:03:10.640 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:03:10.640 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -389.640672
2026-01-22T00:03:10.641 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:03:10.864 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:10.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:10.865 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:10.865 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:11.604 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 286.902/1500.0
2026-01-22T00:03:12.643 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:03:12.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:03:12.644 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:03:12.644608    Obs time: 2026-01-21 21:56:41
2026-01-22T00:03:12.644 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:53:28.355392
2026-01-22T00:03:12.644 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86008
2026-01-22T00:03:12.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:03:12.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:03:13.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 284.871/1500.0
2026-01-22T00:03:13.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:13.887 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:13.887 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:13.887 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:15.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 282.841/1500.0
2026-01-22T00:03:16.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:16.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:03:16.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:16.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:03:17.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 280.81/1500.0
2026-01-22T00:03:19.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:03:19.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 278.78/1500.0
2026-01-22T00:03:19.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:19.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:03:19.891 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:19.891 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:21.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 276.75/1500.0
2026-01-22T00:03:22.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:22.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:22.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:22.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:23.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 274.721/1500.0
2026-01-22T00:03:25.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 272.689/1500.0
2026-01-22T00:03:25.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:25.916 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:25.916 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:25.916 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:27.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 270.66/1500.0
2026-01-22T00:03:28.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:28.936 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:28.936 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:28.936 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:29.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:03:29.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 268.628/1500.0
2026-01-22T00:03:31.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 266.598/1500.0
2026-01-22T00:03:31.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:31.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:31.956 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:31.956 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:33.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 264.567/1500.0
2026-01-22T00:03:34.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:34.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:34.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:34.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:35.969 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 262.537/1500.0
2026-01-22T00:03:37.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:37.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:37.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:37.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:38.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 260.506/1500.0
2026-01-22T00:03:39.669 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:03:40.030 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 258.477/1500.0
2026-01-22T00:03:40.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:40.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:40.986 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:40.986 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:42.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 256.445/1500.0
2026-01-22T00:03:43.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:44.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:44.009 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:44.009 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:44.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 254.415/1500.0
2026-01-22T00:03:46.121 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 252.385/1500.0
2026-01-22T00:03:47.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:47.032 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:47.032 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:47.032 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:48.152 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 250.355/1500.0
2026-01-22T00:03:49.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:03:50.035 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:50.052 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:50.052 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:50.052 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:50.182 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 248.325/1500.0
2026-01-22T00:03:52.213 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 246.295/1500.0
2026-01-22T00:03:53.055 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:53.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:53.056 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:53.056 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:54.243 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 244.264/1500.0
2026-01-22T00:03:56.060 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:56.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:03:56.079 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:56.079 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:03:56.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 242.233/1500.0
2026-01-22T00:03:58.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 240.203/1500.0
2026-01-22T00:03:59.082 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:03:59.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:03:59.083 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:03:59.083 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:03:59.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:04:00.334 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 238.173/1500.0
2026-01-22T00:04:02.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:02.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:04:02.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:02.104 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:02.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 236.142/1500.0
2026-01-22T00:04:04.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 234.112/1500.0
2026-01-22T00:04:05.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:05.124 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:05.124 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:05.124 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:06.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 232.081/1500.0
2026-01-22T00:04:08.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:08.140 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:08.140 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:08.140 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:08.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 230.05/1500.0
2026-01-22T00:04:09.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:04:09.695 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:04:05.365520
2026-01-22T00:04:09.695 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:04:05.365520
2026-01-22T00:04:09.695 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:04:09.695 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:04:09.695 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:04:09.695 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:04:09&start_after=2026-01-20T22:04:09&end_after=2026-01-21T22:04:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:04:09.816 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.817 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.818 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.820 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.821 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.822 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.824 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.824 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.825 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.827 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:04:09.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:04:09.833 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:04:09.833 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:04:09.833 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:04:09.833 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:04:09.833 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -448.833582
2026-01-22T00:04:09.834 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:04:10.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 228.02/1500.0
2026-01-22T00:04:11.143 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:11.144 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:11.144 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:11.144 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:11.836 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:04:11.853 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:04:11.853 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:04:11.853902    Obs time: 2026-01-21 21:56:41
2026-01-22T00:04:11.853 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:52:29.146098
2026-01-22T00:04:11.853 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85949
2026-01-22T00:04:11.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:04:11.854 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:04:12.517 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 225.989/1500.0
2026-01-22T00:04:14.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:14.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:14.167 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:14.167 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:14.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 223.959/1500.0
2026-01-22T00:04:16.578 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 221.928/1500.0
2026-01-22T00:04:17.170 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:17.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:17.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:17.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:18.608 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 219.9/1500.0
2026-01-22T00:04:18.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:04:20.175 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:20.195 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:20.195 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:20.195 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:20.639 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 217.867/1500.0
2026-01-22T00:04:22.669 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 215.837/1500.0
2026-01-22T00:04:23.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:23.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:23.221 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:23.221 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:24.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 213.807/1500.0
2026-01-22T00:04:26.224 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:26.240 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:26.240 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:26.240 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:26.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 211.776/1500.0
2026-01-22T00:04:28.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 209.746/1500.0
2026-01-22T00:04:28.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:04:29.243 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:29.244 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:29.244 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:29.244 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:30.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 207.715/1500.0
2026-01-22T00:04:32.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:32.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:32.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:32.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:32.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 205.685/1500.0
2026-01-22T00:04:34.852 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 203.656/1500.0
2026-01-22T00:04:35.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:35.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:35.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:35.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:36.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 201.624/1500.0
2026-01-22T00:04:38.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:38.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:38.296 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:38.296 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:38.877 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:04:38.913 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 199.593/1500.0
2026-01-22T00:04:40.943 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 197.563/1500.0
2026-01-22T00:04:41.299 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:41.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:41.322 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:41.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:42.973 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 195.532/1500.0
2026-01-22T00:04:44.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:44.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:44.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:44.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:45.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 193.502/1500.0
2026-01-22T00:04:47.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 191.472/1500.0
2026-01-22T00:04:47.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:47.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:47.349 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:47.349 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:48.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:04:49.065 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 189.441/1500.0
2026-01-22T00:04:50.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:50.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:50.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:50.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:51.095 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 187.411/1500.0
2026-01-22T00:04:53.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 185.38/1500.0
2026-01-22T00:04:53.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:53.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:53.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:53.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:55.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 183.35/1500.0
2026-01-22T00:04:56.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:56.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:56.393 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:56.393 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:04:57.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 181.32/1500.0
2026-01-22T00:04:58.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:04:59.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 179.289/1500.0
2026-01-22T00:04:59.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:04:59.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:04:59.418 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:04:59.418 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:01.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 177.261/1500.0
2026-01-22T00:05:02.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:02.443 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:02.444 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:02.444 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:03.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 175.229/1500.0
2026-01-22T00:05:05.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 173.198/1500.0
2026-01-22T00:05:05.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:05.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:05.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:05.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:07.339 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 171.167/1500.0
2026-01-22T00:05:08.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:08.467 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:08.467 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:08.467 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:08.901 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:05:08.901 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:05:05.564326
2026-01-22T00:05:08.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:05:05.564326
2026-01-22T00:05:08.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:05:08.902 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:05:08.902 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:05:08.902 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:05:08&start_after=2026-01-20T22:05:08&end_after=2026-01-21T22:05:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:05:09.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.017 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.019 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.024 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.026 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:05:09.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:05:09.032 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:05:09.032 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:05:09.032 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:05:09.032 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:05:09.032 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -508.032582
2026-01-22T00:05:09.033 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:05:09.369 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 169.137/1500.0
2026-01-22T00:05:11.035 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:05:11.054 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:05:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:05:11.054336    Obs time: 2026-01-21 21:56:41
2026-01-22T00:05:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:51:29.945664
2026-01-22T00:05:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85889
2026-01-22T00:05:11.054 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:05:11.054 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:05:11.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.109/1500.0
2026-01-22T00:05:11.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:11.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:11.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:11.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:13.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.077/1500.0
2026-01-22T00:05:14.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:14.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:14.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:14.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:15.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 163.046/1500.0
2026-01-22T00:05:17.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 161.017/1500.0
2026-01-22T00:05:17.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:17.510 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:17.510 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:17.510 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:18.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:05:19.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.985/1500.0
2026-01-22T00:05:20.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:20.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:20.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:20.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:21.552 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.956/1500.0
2026-01-22T00:05:23.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:23.538 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:23.538 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:23.538 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:23.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.924/1500.0
2026-01-22T00:05:25.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.894/1500.0
2026-01-22T00:05:26.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:26.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:26.564 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:26.564 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:27.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.865/1500.0
2026-01-22T00:05:28.070 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:05:29.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:29.568 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:29.568 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:29.568 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:29.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.833/1500.0
2026-01-22T00:05:31.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.802/1500.0
2026-01-22T00:05:32.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:32.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:32.589 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:32.589 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:33.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.772/1500.0
2026-01-22T00:05:35.592 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:35.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:35.593 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:35.593 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:35.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.742/1500.0
2026-01-22T00:05:37.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.711/1500.0
2026-01-22T00:05:38.080 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:05:38.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:38.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:38.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:38.615 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:39.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.681/1500.0
2026-01-22T00:05:41.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:41.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:41.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:41.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:41.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.652/1500.0
2026-01-22T00:05:43.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 134.621/1500.0
2026-01-22T00:05:44.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:44.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:44.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:44.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:45.917 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 132.591/1500.0
2026-01-22T00:05:47.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:47.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:47.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:47.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:47.947 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 130.561/1500.0
2026-01-22T00:05:48.089 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:05:49.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 128.529/1500.0
2026-01-22T00:05:50.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:50.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:50.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:50.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:52.008 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 126.498/1500.0
2026-01-22T00:05:53.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:53.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:53.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:53.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:54.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 124.468/1500.0
2026-01-22T00:05:56.069 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 122.437/1500.0
2026-01-22T00:05:56.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:56.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:56.713 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:56.713 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:05:58.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:05:58.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.407/1500.0
2026-01-22T00:05:59.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:05:59.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:05:59.717 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:05:59.717 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:00.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.378/1500.0
2026-01-22T00:06:02.160 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.346/1500.0
2026-01-22T00:06:02.720 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:02.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:02.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:02.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:04.190 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.317/1500.0
2026-01-22T00:06:05.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:05.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:05.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:05.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:06.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.285/1500.0
2026-01-22T00:06:08.108 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:06:08.109 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:06:05.764066
2026-01-22T00:06:08.109 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:06:05.764066
2026-01-22T00:06:08.109 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:06:08.109 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:06:08.109 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:06:08.109 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:06:08&start_after=2026-01-20T22:06:08&end_after=2026-01-21T22:06:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:06:08.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.255/1500.0
2026-01-22T00:06:08.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.258 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.260 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.267 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:06:08.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:06:08.273 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:06:08.273 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:06:08.273 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:06:08.273 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:06:08.273 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -567.273633
2026-01-22T00:06:08.274 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:06:08.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:08.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:08.770 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:08.770 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:10.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:06:10.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.225/1500.0
2026-01-22T00:06:10.295 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:06:10.295 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:06:10.295900    Obs time: 2026-01-21 21:56:41
2026-01-22T00:06:10.295 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:50:30.704100
2026-01-22T00:06:10.295 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85830
2026-01-22T00:06:10.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:06:10.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:06:11.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:11.792 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:11.792 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:11.792 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:12.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.195/1500.0
2026-01-22T00:06:14.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.163/1500.0
2026-01-22T00:06:14.795 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:14.816 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:14.816 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:14.816 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:16.373 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.133/1500.0
2026-01-22T00:06:17.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:06:17.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:17.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:06:17.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:17.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T00:06:18.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.104/1500.0
2026-01-22T00:06:20.434 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.072/1500.0
2026-01-22T00:06:20.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:20.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T00:06:20.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:20.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:22.465 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.042/1500.0
2026-01-22T00:06:23.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:23.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:23.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:23.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:24.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.011/1500.0
2026-01-22T00:06:26.526 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.981/1500.0
2026-01-22T00:06:26.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:26.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:26.891 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:26.891 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:27.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:06:28.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.95/1500.0
2026-01-22T00:06:29.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:29.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:29.913 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:29.913 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:30.587 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.921/1500.0
2026-01-22T00:06:32.617 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.889/1500.0
2026-01-22T00:06:32.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:32.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:32.935 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:32.935 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:34.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.858/1500.0
2026-01-22T00:06:35.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:35.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:35.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:35.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:36.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.829/1500.0
2026-01-22T00:06:37.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:06:38.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.761/1500.0
2026-01-22T00:06:38.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:38.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:38.979 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:38.979 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:40.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.729/1500.0
2026-01-22T00:06:41.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:41.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:06:41.982 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:41.982 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:06:42.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.7/1500.0
2026-01-22T00:06:44.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.668/1500.0
2026-01-22T00:06:44.985 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:45.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:06:45.001 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:45.001 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:46.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.601/1500.0
2026-01-22T00:06:47.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:06:48.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:48.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:48.024 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:48.024 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:48.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.531/1500.0
2026-01-22T00:06:51.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:51.043 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:51.043 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:51.043 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:51.044 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 67.501/1500.0
2026-01-22T00:06:53.074 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.433/1500.0
2026-01-22T00:06:54.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:54.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:54.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:54.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:55.105 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.402/1500.0
2026-01-22T00:06:57.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:06:57.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:06:57.067 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:06:57.067 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:06:57.135 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.371/1500.0
2026-01-22T00:06:57.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:06:59.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.341/1500.0
2026-01-22T00:07:00.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:00.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:00.069 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:00.069 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:01.234 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.31/1500.0
2026-01-22T00:07:03.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:03.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:03.091 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:03.091 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:03.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.242/1500.0
2026-01-22T00:07:05.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 53.173/1500.0
2026-01-22T00:07:06.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:06.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:06.109 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:06.109 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:07.350 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:07:07.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 51.143/1500.0
2026-01-22T00:07:07.367 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:07:05.964218
2026-01-22T00:07:07.367 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:07:05.964218
2026-01-22T00:07:07.367 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:07:07.368 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:07:07.368 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:07:07.368 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:07:07&start_after=2026-01-20T22:07:07&end_after=2026-01-21T22:07:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:07:07.484 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.485 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.486 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.487 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.489 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.490 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.491 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.492 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.493 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.495 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.497 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.498 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:07:07.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:07:07.501 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:07:07.501 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 15 configurations
2026-01-22T00:07:07.501 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:07:07.501 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T21:56:41Z
2026-01-22T00:07:07.501 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -626.501669
2026-01-22T00:07:07.502 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:07:09.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:09.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:09.130 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:09.130 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:09.394 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 49.113/1500.0
2026-01-22T00:07:09.504 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:07:09.505 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:07:09.505 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:07:09.505396    Obs time: 2026-01-21 21:56:41
2026-01-22T00:07:09.505 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:49:31.494604
2026-01-22T00:07:09.505 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85771
2026-01-22T00:07:09.505 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:56:41Z', 'guide_off', 'config_id 13536', 'config_status_id 17511871', 'update_OCS 17511871 ATTEMPTED', 'run_script setup_std_star_EG21_17233118_13490_13536.json', 'run_script std_star_EG21_17233118_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17511871 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:07:55Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:07:09.505 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:07:11.425 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.082/1500.0
2026-01-22T00:07:12.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:12.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:12.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:12.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:13.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.051/1500.0
2026-01-22T00:07:15.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:15.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:15.153 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:15.153 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:15.486 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.021/1500.0
2026-01-22T00:07:16.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:07:17.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.99/1500.0
2026-01-22T00:07:18.156 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:18.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:18.157 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:18.157 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:19.585 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.921/1500.0
2026-01-22T00:07:21.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:21.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:21.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:21.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:21.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.891/1500.0
2026-01-22T00:07:23.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.861/1500.0
2026-01-22T00:07:24.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:24.199 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:24.199 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:24.199 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:25.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.829/1500.0
2026-01-22T00:07:26.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:07:27.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:27.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:27.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:27.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:27.745 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.799/1500.0
2026-01-22T00:07:29.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.731/1500.0
2026-01-22T00:07:30.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:30.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:30.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:30.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:31.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.701/1500.0
2026-01-22T00:07:33.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:33.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:33.245 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:33.245 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:33.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.669/1500.0
2026-01-22T00:07:35.905 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.639/1500.0
2026-01-22T00:07:36.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:36.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:36.249 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:36.249 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:36.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:07:37.936 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.571/1500.0
2026-01-22T00:07:39.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:39.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:39.269 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:39.269 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:39.966 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.54/1500.0
2026-01-22T00:07:42.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.511/1500.0
2026-01-22T00:07:42.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:42.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:42.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:42.290 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:44.065 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.437/1500.0
2026-01-22T00:07:45.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:45.310 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:45.310 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:45.310 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:46.096 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.411/1500.0
2026-01-22T00:07:46.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:07:48.127 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.381/1500.0
2026-01-22T00:07:48.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:48.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:48.314 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:48.314 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:50.157 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.349/1500.0
2026-01-22T00:07:51.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:51.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:51.337 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:51.337 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:52.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.319/1500.0
2026-01-22T00:07:54.218 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.288/1500.0
2026-01-22T00:07:54.340 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:54.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:54.341 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:54.341 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:56.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.257/1500.0
2026-01-22T00:07:56.548 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:07:57.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:07:57.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:07:57.360 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:07:57.360 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:07:58.279 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: SN2025advo_spec_17232207_13458_13504.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.228/1500.0
2026-01-22T00:07:59.066 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:07:59.067 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:07:59.089 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:08:00.363 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:08:00.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-22T00:08:00.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-22T00:08:00.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:08:00.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:08:00.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:08:00.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:08:00.364 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:08:00.364 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:08:00.364 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:08:00.364 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:08:00.374 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:08:00.375 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:08:00.375 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:08:00.375 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:08:00.375 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:08:00.417 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:08:01.418 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:08:01.418 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:08:01.418 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:08:01.418 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:08:01.470 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:08:02.471 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:08:02.523 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:08:03.524 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:08:03.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.09
2026-01-22T00:08:03.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:07:25
2026-01-22T00:08:03.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:07:25
2026-01-22T00:08:03.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:08:03.525 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09230763779527557
2026-01-22T00:08:03.528 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:08:03.528 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T00:08:03.528 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T00:08:04.559 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:08:06.559 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:08:06.559 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:08:06.160924
2026-01-22T00:08:06.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:08:06.160924
2026-01-22T00:08:06.559 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:08:06.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:08:06.560 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:08:06.560 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:08:06&start_after=2026-01-20T22:08:06&end_after=2026-01-21T22:08:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:08:06.561 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T00:08:06.562 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:08:06.562 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:08:06.562 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:08:06.562 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:08:06.563 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:08:06.564 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:08:06.565 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:08:06.666 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:08:06.666 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:08:06.668 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033286.6686058
2026-01-22T00:08:06.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.685 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.690 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.691 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.692 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.694 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.695 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.697 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.698 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:08:06.699 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:08:06.700 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:08:06.700 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:08:06.700 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:08:06.700 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:07:55Z
2026-01-22T00:08:06.700 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -11.700805
2026-01-22T00:08:06.701 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:08:07.062 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:08:07.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:08:07.563 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:08:07.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:08:07.579 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:08:07.579 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:08:08.703 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:08:08.722 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:08:08.722 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:08:08.722865    Obs time: 2026-01-21 22:07:55
2026-01-22T00:08:08.722 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:46.277135
2026-01-22T00:08:08.722 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86386
2026-01-22T00:08:08.722 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:07:55Z', 'guide_off', 'config_id 13535', 'config_status_id 17512048', 'update_OCS 17512048 ATTEMPTED', 'run_script setup_std_star_EG21_17233295_13489_13535.json', 'run_script std_star_EG21_17233295_13489_13535.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512048 COMPLETED 13535 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:19:09Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:08:08.722 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:08:10.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:08:10.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:08:10.583 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:08:10.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:08:11.929 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:08:11.929 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:08:11.949 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:08:13.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:08:13.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-22T00:08:13.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:08:13.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:08:13.982 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:08:13.982 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script SN2025advo_spec_17232207_13458_13504.json was run successfully
2026-01-22T00:08:13.982 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:08:13.982 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:08:13.982 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:08:13.982 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:08:13.982 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:08:13.982 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:08:13.982 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:08:14.483 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:08:14.483 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:08:14.483 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:08:14.483 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:08:14.483 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:08:14.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:08:14.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:08:14.483 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:08:14.483 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:08:14.502 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 08:19:00.53976   Targ dec = +04:32:33.3492
2026-01-22T00:08:14.502 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:08:14.502 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:08:14.502 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:08:14.510 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:08:14.510 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:08:14.510 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:08:14.510 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:08:15.539 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:08:15.730 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:08:17.541 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:08:17.541 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:08:17.550 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:08:17.987 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:08:17.987 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:08:17.987 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17510960 COMPLETED 13504 reason
2026-01-22T00:08:17.987 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17510960 COMPLETED 13504 reason
2026-01-22T00:08:17.987 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:08:17.987 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:08:17.987 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:08:17.987 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:08:17.987 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:08:17.987 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:08:20.989 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:08:20.989 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:08:22.991 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:08:22.991 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:08:22.991 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T00:08:22.991 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T00:08:22.991 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T00:08:22.994 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T00:08:22.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T21:44:56Z
2026-01-22T00:08:22.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:08:22.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:08:22.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:08:22.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:08:22.994 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:08:22.994 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:08:22.994 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:08:23.495 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:08:23.495 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:08:23.495 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:08:23.495 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:08:23.495 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:08:23.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:08:23.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:08:23.495 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:08:23.495 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:08:23.517 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 08:19:00.74964   Targ dec = +04:32:32.9748
2026-01-22T00:08:23.518 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:08:23.518 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:08:23.518 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:08:23.524 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:08:23.524 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:08:23.524 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:08:23.524 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:08:24.563 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:08:25.740 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:08:26.565 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:08:26.565 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:08:26.565 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:08:26.998 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:08:26.999 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:08:26.999 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T00:08:26.999 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T00:08:26.999 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T00:08:26.999 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17510960
2026-01-22T00:08:26.999 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T00:08:26.999 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T00:08:26.999 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T21:40:30', 'end': '2026-01-21T22:08:26', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1676.0', 'events': {}}} with config status ID 17510960
2026-01-22T00:08:27.132 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:08:27.132 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T21:11:42Z', 'guide_off', 'config_id 13504', 'config_status_id 17510960', 'update_OCS 17510960 ATTEMPTED', 'run_script setup_SN2025advo_spec_17232207_13458_13504.json', 'run_script SN2025advo_spec_17232207_13458_13504.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17510960 COMPLETED 13504 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T21:44:56Z', 'run_script arc_flat_lamp_off.json'] at time 00:08:27
2026-01-22T00:08:35.750 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:08:45.761 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:08:55.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:09:05.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:09:05.783 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:08:06.160924
2026-01-22T00:09:05.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:08:06.160924
2026-01-22T00:09:05.783 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:09:05.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:09:05.783 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:09:05.783 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:09:05&start_after=2026-01-20T22:09:05&end_after=2026-01-21T22:09:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:09:05.909 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.913 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.915 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.917 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.920 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.921 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.922 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:09:05.924 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:09:05.924 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:09:05.924 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:09:05.924 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:09:05.924 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:07:55Z
2026-01-22T00:09:05.924 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -70.92492
2026-01-22T00:09:05.925 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:09:07.927 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:09:07.928 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:09:07.928 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:09:07.928576    Obs time: 2026-01-21 22:07:55
2026-01-22T00:09:07.928 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:47.071424
2026-01-22T00:09:07.928 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86327
2026-01-22T00:09:07.928 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:07:55Z', 'guide_off', 'config_id 13535', 'config_status_id 17512070', 'update_OCS 17512070 ATTEMPTED', 'run_script setup_std_star_EG21_17233317_13489_13535.json', 'run_script std_star_EG21_17233317_13489_13535.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512070 COMPLETED 13535 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:19:09Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:09:07.928 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T00:09:07.928 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T00:09:07.928 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:09:07.928 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T00:09:07.929 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T00:09:07.929 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T00:09:07.929 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T00:09:07.929 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T00:09:07.929 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T00:09:07.929 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T00:09:07.929 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:09:07.929 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:09:07.929 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:09:07.929 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:09:07.929 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:09:07.930 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:09:10.933 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:09:10.933 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:09:12.935 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:09:12.935 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:09:12.935 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T22:07:55Z
2026-01-22T00:09:12.935 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T22:07:55Z
2026-01-22T00:09:12.935 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:09:12.935 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:09:12.935 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:09:12.935 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:09:12.935 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:09:12.935 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:09:14.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:09:15.939 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:09:15.939 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:09:17.941 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13535
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13535
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17512070
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17512070
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512070 ATTEMPTED
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512070 ATTEMPTED
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_EG21_17233317_13489_13535.json
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_EG21_17233317_13489_13535.json
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_EG21_17233317_13489_13535.json
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_EG21_17233317_13489_13535.json
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 3.17534, 'targ_dec': -68.60168610631658, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '03:10:31.21', 'targ_dec': '-68:36:06.07', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_EG21_17233317_13489_13535.json'}
2026-01-22T00:09:17.942 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:09:17.942 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512070
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T00:09:17.942 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17512070
2026-01-22T00:09:18.018 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:09:18.443 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:09:18.443 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_EG21_17233317_13489_13535.json 1 times
2026-01-22T00:09:18.443 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:09:18.445 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T00:09:18.445 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T00:09:18.445 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T00:09:21.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:22.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:23.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:24.530 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:24.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:09:25.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:26.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:27.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:28.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:29.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:30.652 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:31.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:32.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:33.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:34.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:34.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:09:35.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:36.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:37.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:38.813 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:39.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:40.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:41.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:42.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:43.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:44.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:44.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:09:45.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:46.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:47.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:49.011 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:50.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:51.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:52.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:53.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:54.115 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:54.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:09:55.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:56.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:57.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:58.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:09:59.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:00.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:01.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:02.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:03.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:04.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:04.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:10:04.989 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:09:06.361137
2026-01-22T00:10:04.989 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:09:06.361137
2026-01-22T00:10:04.989 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:10:04.989 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:10:04.989 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:10:04.989 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:10:04&start_after=2026-01-20T22:10:04&end_after=2026-01-21T22:10:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:10:05.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:10:05.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:10:05.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:10:05.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:10:05.117 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:10:05.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:10:05.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:10:05.125 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:10:05.125 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:10:05.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:10:05.125 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:20:00Z
2026-01-22T00:10:05.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 594.873971
2026-01-22T00:10:05.126 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:10:05.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:06.369 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:07.128 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:10:07.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:10:07.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:10:07.129698    Obs time: 2026-01-21 22:20:00
2026-01-22T00:10:07.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:52.870302
2026-01-22T00:10:07.129 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  592
2026-01-22T00:10:07.129 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:10:07.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:08.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:09.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:10.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:11.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:10:12.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T00:10:12.491 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  3.17600150774103 is close enough to target ra = 3.17534
2026-01-22T00:10:12.491 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -68.6046866341989 is close enough to target dec = -68.60168610631658
2026-01-22T00:10:12.491 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T00:10:12.491 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:10:12.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:10:12.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:10:12.491 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:10:12.491 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T00:10:12.491 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T00:10:12.501 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:10:12.501 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:10:12.547 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:10:13.548 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:10:13.548 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:10:13.599 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:10:14.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:10:14.601 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:10:14.652 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:10:15.654 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:10:15.655 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.82
2026-01-22T00:10:15.655 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:09:34
2026-01-22T00:10:15.655 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:09:34
2026-01-22T00:10:15.655 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:10:15.655 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09247133858267714
2026-01-22T00:10:15.659 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T00:10:15.659 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T00:10:15.659 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T00:10:15.667 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:10:15.668 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:10:15.743 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:10:16.744 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:10:16.744 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:10:16.796 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:10:17.797 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:10:17.849 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:10:18.850 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:10:18.852 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.82
2026-01-22T00:10:18.852 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:09:34
2026-01-22T00:10:18.852 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:09:34
2026-01-22T00:10:18.852 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:10:18.852 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09247133858267714
2026-01-22T00:10:23.909 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T00:10:23.909 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:10:23.909 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:10:23.909 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:10:23.909 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:10:23.909 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:10:23.911 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:10:23.911 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:10:23.928 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:10:24.023 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:10:24.023 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:10:24.025 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033424.0255787
2026-01-22T00:10:24.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:10:29.286 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:10:29.286 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:10:29.288 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:10:29.418 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T00:10:33.421 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T00:10:33.421 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T00:10:34.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:10:43.469 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T00:10:43.469 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:10:43.469 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 03:10:31.21 = 171468.15 arcseconds
2026-01-22T00:10:43.469 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -68:36:06.07 = -246966.07 arcseconds
2026-01-22T00:10:43.469 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-22T00:10:43.489 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:10:43.489 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.213
2026-01-22T00:10:43.489 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:10:43.489 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (03:10:32.491, -68:36:28.438).
2026-01-22T00:10:43.489 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  03 10 32.491  -68 36 28.438 .
2026-01-22T00:10:43.489 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 03 10 32.491  -68 36 28.438 .
2026-01-22T00:10:43.489 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 171487.365
2026-01-22T00:10:43.489 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -246988.438
2026-01-22T00:10:43.700 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:10:44.167 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:10:48.728 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T00:10:48.728 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:10:48.728 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:10:48.728 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:10:48.728 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:10:48.728 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:10:48.730 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:10:48.730 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:10:48.732 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:10:48.842 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:10:48.842 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:10:48.844 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033448.844597
2026-01-22T00:10:50.230 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:10:53.104 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:10:53.104 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:10:53.106 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:10:53.236 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T00:10:54.177 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:10:57.240 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T00:11:04.187 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:11:04.204 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:10:06.561162
2026-01-22T00:11:04.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:10:06.561162
2026-01-22T00:11:04.204 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:11:04.204 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:11:04.204 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:11:04.204 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:11:04&start_after=2026-01-20T22:11:04&end_after=2026-01-21T22:11:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:11:04.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.322 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.327 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.335 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:11:04.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:11:04.337 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:11:04.337 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:11:04.337 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:11:04.337 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:11:04.337 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 484.662279
2026-01-22T00:11:04.338 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:11:06.340 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:11:06.359 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:11:06.359 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:11:06.359708    Obs time: 2026-01-21 22:19:09
2026-01-22T00:11:06.359 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:02.640292
2026-01-22T00:11:06.359 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  482
2026-01-22T00:11:06.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:11:07.292 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T00:11:07.292 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:11:07.292 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 03:10:31.21 = 171468.15 arcseconds
2026-01-22T00:11:07.292 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -68:36:06.07 = -246966.07 arcseconds
2026-01-22T00:11:07.292 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-22T00:11:07.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:11:07.312 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.254
2026-01-22T00:11:07.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:11:07.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (03:10:20.138, -68:35:24.283).
2026-01-22T00:11:07.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  03 10 20.138  -68 35 24.283 .
2026-01-22T00:11:07.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 03 10 20.138  -68 35 24.283 .
2026-01-22T00:11:07.312 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 171302.07
2026-01-22T00:11:07.312 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -246924.283
2026-01-22T00:11:07.523 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:11:12.541 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T00:11:12.541 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:11:12.541 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:11:12.541 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:11:12.541 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:11:12.541 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:11:12.543 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:11:12.543 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:11:12.545 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:11:12.641 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:11:12.641 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:11:12.643 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033472.6430407
2026-01-22T00:11:13.366 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:11:14.043 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:11:16.901 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:11:16.901 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:11:16.924 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:11:17.049 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T00:11:21.673 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] nudge_star_to_slit: 613.125026498932, 584.8671092333799
2026-01-22T00:11:21.673 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] WCS_Dec_D, rotation_angle =  -68.0, 179.254
2026-01-22T00:11:21.674 [INFO] [script_worker] [instrument.py] [go_nudge_star_to_slit()] Not nudging star. RA nudge (4.524933082180238) is greater than 3
2026-01-22T00:11:23.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:11:23.692 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:11:23.692 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:11:23.692 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:11:23.692 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:11:23.692 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:11:23.694 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:11:23.694 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:11:23.696 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:11:23.823 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:11:23.823 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:11:23.824 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033483.824807
2026-01-22T00:11:25.193 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:11:28.084 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:11:28.084 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:11:28.105 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:11:28.200 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T00:11:30.589 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  11031  4085  14.8 to host 127.0.0.1 on port 12360
2026-01-22T00:11:30.590 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:11:30.590 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:11:33.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:11:33.593 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  11031  4085  14.8
2026-01-22T00:11:33.593 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  11031  4085  14.8
2026-01-22T00:11:35.595 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:11:43.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:11:53.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:12:03.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:12:03.435 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:11:06.760097
2026-01-22T00:12:03.435 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:11:06.760097
2026-01-22T00:12:03.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:12:03.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:12:03.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:12:03.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:12:03&start_after=2026-01-20T22:12:03&end_after=2026-01-21T22:12:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:12:03.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:12:03.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:12:03.586 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:12:03.586 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:12:03.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:12:03.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:12:03.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 425.413679
2026-01-22T00:12:03.587 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:12:05.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:12:05.590 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:12:05.590 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:12:05.590231    Obs time: 2026-01-21 22:19:09
2026-01-22T00:12:05.590 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:03.409769
2026-01-22T00:12:05.590 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  423
2026-01-22T00:12:05.590 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:12:12.597 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:12:14.634 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T00:12:14.634 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:12:14.634 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:12:17.637 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T00:12:17.637 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T00:12:19.640 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:12:19.640 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:12:19.640 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:12:19.640 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:12:19.640 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:12:19.640 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:12:19.640 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:12:19.640 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:12:20.809 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:12:22.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:12:22.811 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:12:22.811 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:12:22.811 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:12:23.218 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:12:23.218 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_EG21_17233317_13489_13535.json was run successfully
2026-01-22T00:12:23.218 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_EG21_17233317_13489_13535.json
2026-01-22T00:12:23.218 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_EG21_17233317_13489_13535.json
2026-01-22T00:12:23.218 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_EG21_17233317_13489_13535.json
2026-01-22T00:12:23.218 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_EG21_17233317_13489_13535.json
2026-01-22T00:12:23.218 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'EG21', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '03:10:31.21', 'targ_dec': '-68:36:06.07', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_EG21_17233317_13489_13535.json'}
2026-01-22T00:12:23.218 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:12:23.218 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:12:23.719 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:12:23.719 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_EG21_17233317_13489_13535.json 1 times
2026-01-22T00:12:23.719 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-22T00:12:23.719 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:12:23.719 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:12:23.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:12:23.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:12:23.719 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:12:23.719 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:12:23.719 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:12:23.719 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:12:23.729 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:12:23.730 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:12:23.730 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:12:23.730 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:12:23.730 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:12:23.775 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:12:24.776 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:12:24.776 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:12:24.776 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:12:24.776 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:12:24.828 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:12:25.829 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:12:25.881 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:12:26.882 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:12:26.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.16
2026-01-22T00:12:26.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:11:42
2026-01-22T00:12:26.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:11:42
2026-01-22T00:12:26.884 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:12:26.884 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09287149606299211
2026-01-22T00:12:26.887 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:12:26.887 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:12:26.887 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:12:28.071 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:12:30.074 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='03:10:31.21', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-68:36:06.07', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='EG21', comment='The object name')]
2026-01-22T00:12:30.074 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:12:30.074 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:12:30.074 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:12:30.074 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:12:30.076 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:12:30.076 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:12:30.078 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:12:30.191 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:12:30.191 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:12:30.193 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033550.1932578
2026-01-22T00:12:30.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:12:30.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:12:31.075 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:31.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:12:31.076 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:31.076 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:12:32.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:12:34.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:34.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:12:34.080 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:34.080 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:35.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.538/180.0
2026-01-22T00:12:37.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:37.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:12:37.100 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:37.100 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:37.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.373/180.0
2026-01-22T00:12:39.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.354/180.0
2026-01-22T00:12:40.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:40.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:12:40.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:40.104 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:42.015 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.209/180.0
2026-01-22T00:12:42.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:12:43.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:43.127 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:12:43.127 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:43.127 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:44.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.178/180.0
2026-01-22T00:12:46.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:46.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:12:46.151 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:46.151 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:12:46.230 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.134/180.0
2026-01-22T00:12:48.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 161.964/180.0
2026-01-22T00:12:49.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:49.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:12:49.175 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:49.175 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:50.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 159.918/180.0
2026-01-22T00:12:52.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:52.179 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:12:52.179 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:52.179 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000331966
2026-01-22T00:12:52.339 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 157.887/180.0
2026-01-22T00:12:52.632 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:12:54.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 155.855/180.0
2026-01-22T00:12:55.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:55.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000331966
2026-01-22T00:12:55.197 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:55.197 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:56.578 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.647/180.0
2026-01-22T00:12:58.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:12:58.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:12:58.201 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:12:58.201 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:12:58.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.616/180.0
2026-01-22T00:13:00.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.521/180.0
2026-01-22T00:13:01.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:01.223 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:01.223 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:01.223 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:02.639 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:13:02.661 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:12:06.958963
2026-01-22T00:13:02.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:12:06.958963
2026-01-22T00:13:02.662 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:13:02.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:13:02.662 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:13:02.662 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:13:02&start_after=2026-01-20T22:13:02&end_after=2026-01-21T22:13:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:13:02.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.477/180.0
2026-01-22T00:13:02.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.789 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.794 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.797 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:13:02.799 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:13:02.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:13:02.800 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:13:02.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:13:02.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:13:02.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 366.199292
2026-01-22T00:13:02.801 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:13:04.226 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:04.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:04.245 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:04.245 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:04.803 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:13:04.804 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:13:04.804 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:13:04.804496    Obs time: 2026-01-21 22:19:09
2026-01-22T00:13:04.804 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:04.195504
2026-01-22T00:13:04.804 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  364
2026-01-22T00:13:04.804 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:13:04.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.459/180.0
2026-01-22T00:13:06.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.378/180.0
2026-01-22T00:13:07.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:07.268 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:07.268 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:07.268 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:08.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.283/180.0
2026-01-22T00:13:10.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:10.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:10.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:10.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:11.110 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.252/180.0
2026-01-22T00:13:11.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:13:13.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.083/180.0
2026-01-22T00:13:13.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:13.291 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:13.291 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:13.292 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:15.336 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.027/180.0
2026-01-22T00:13:16.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:16.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:16.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:16.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:17.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 132.859/180.0
2026-01-22T00:13:19.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:19.320 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:19.320 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:19.320 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:19.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 130.815/180.0
2026-01-22T00:13:21.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 128.783/180.0
2026-01-22T00:13:21.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:13:22.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:22.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:22.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:22.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:23.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 126.576/180.0
2026-01-22T00:13:25.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:25.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:25.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:25.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:25.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 124.532/180.0
2026-01-22T00:13:27.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 122.402/180.0
2026-01-22T00:13:28.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:28.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:28.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:28.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:29.856 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.383/180.0
2026-01-22T00:13:31.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:31.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:31.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:31.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:31.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:13:31.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.338/180.0
2026-01-22T00:13:33.905 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.321/180.0
2026-01-22T00:13:34.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:34.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:34.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:34.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:35.935 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.289/180.0
2026-01-22T00:13:37.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:37.402 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:37.402 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:37.402 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:38.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.259/180.0
2026-01-22T00:13:40.161 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.076/180.0
2026-01-22T00:13:40.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:40.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:40.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:40.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:41.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:13:42.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.033/180.0
2026-01-22T00:13:43.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:43.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:43.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:43.447 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:44.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.002/180.0
2026-01-22T00:13:46.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.947/180.0
2026-01-22T00:13:46.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:46.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:46.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:46.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:48.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.764/180.0
2026-01-22T00:13:49.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:49.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:49.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:49.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:50.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.734/180.0
2026-01-22T00:13:51.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:13:52.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:52.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:52.473 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:52.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:52.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.652/180.0
2026-01-22T00:13:54.768 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.495/180.0
2026-01-22T00:13:55.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:55.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:13:55.491 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:55.491 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:13:56.813 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.427/180.0
2026-01-22T00:13:58.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:13:58.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:13:58.513 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:13:58.513 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:13:58.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.382/180.0
2026-01-22T00:14:00.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.35/180.0
2026-01-22T00:14:01.516 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:01.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:14:01.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:01.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:01.848 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:14:01.849 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:13:07.160305
2026-01-22T00:14:01.849 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:13:07.160305
2026-01-22T00:14:01.849 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:14:01.849 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:14:01.849 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:14:01.849 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:14:01&start_after=2026-01-20T22:14:01&end_after=2026-01-21T22:14:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:14:01.970 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.971 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.973 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.976 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.978 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.980 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:14:01.986 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:14:01.987 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:14:01.987 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:14:01.987 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:14:01.987 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:14:01.987 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 307.012413
2026-01-22T00:14:01.988 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:14:03.044 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.332/180.0
2026-01-22T00:14:03.989 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:14:03.990 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:14:03.990 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:14:03.990506    Obs time: 2026-01-21 22:19:09
2026-01-22T00:14:03.990 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:05.009494
2026-01-22T00:14:03.990 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  305
2026-01-22T00:14:03.990 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:14:04.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:04.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:04.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:04.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:05.227 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.15/180.0
2026-01-22T00:14:07.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.967/180.0
2026-01-22T00:14:07.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:07.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:07.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:07.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:09.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.923/180.0
2026-01-22T00:14:10.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:10.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:10.567 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:10.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:10.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:14:11.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.893/180.0
2026-01-22T00:14:13.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.872/180.0
2026-01-22T00:14:13.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:13.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:13.591 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:13.591 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:15.434 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.827/180.0
2026-01-22T00:14:16.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:16.615 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:14:16.615 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:16.615 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:14:17.502 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.759/180.0
2026-01-22T00:14:19.570 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.691/180.0
2026-01-22T00:14:19.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:19.639 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0009999999999763531
2026-01-22T00:14:19.639 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:19.639 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:14:21.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:14:21.627 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.623/180.0
2026-01-22T00:14:22.643 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:22.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:14:22.644 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:22.644 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:23.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.567/180.0
2026-01-22T00:14:25.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:25.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:25.693 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:25.693 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:25.852 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.385/180.0
2026-01-22T00:14:27.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.343/180.0
2026-01-22T00:14:28.696 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:28.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:28.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:28.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:29.953 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.298/180.0
2026-01-22T00:14:31.015 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:14:31.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:31.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:31.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:31.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:32.009 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.241/180.0
2026-01-22T00:14:34.028 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.185/180.0
2026-01-22T00:14:34.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:34.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:34.723 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:34.723 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:36.058 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.166/180.0
2026-01-22T00:14:37.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:37.744 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:37.744 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:37.744 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:38.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.135/180.0
2026-01-22T00:14:40.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 49.953/180.0
2026-01-22T00:14:40.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:40.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:40.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:40.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:41.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:14:42.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.923/180.0
2026-01-22T00:14:43.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:43.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:43.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:43.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:44.485 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.74/180.0
2026-01-22T00:14:46.515 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.71/180.0
2026-01-22T00:14:46.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:46.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:14:46.769 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:46.770 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:14:48.560 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.678/180.0
2026-01-22T00:14:49.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:49.791 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:14:49.791 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:49.791 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:50.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.633/180.0
2026-01-22T00:14:51.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:14:52.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.577/180.0
2026-01-22T00:14:52.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:52.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:14:52.812 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:52.812 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:54.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.533/180.0
2026-01-22T00:14:55.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:55.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:14:55.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:55.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:14:56.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.365/180.0
2026-01-22T00:14:58.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:14:58.836 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:14:58.836 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:14:58.836 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:14:58.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.333/180.0
2026-01-22T00:15:01.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.24/180.0
2026-01-22T00:15:01.041 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:15:01.041 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:14:07.360068
2026-01-22T00:15:01.042 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:14:07.360068
2026-01-22T00:15:01.042 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:15:01.042 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:15:01.042 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:15:01.042 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:15:01&start_after=2026-01-20T22:15:01&end_after=2026-01-21T22:15:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:15:01.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.163 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.167 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.171 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.175 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:15:01.177 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:15:01.178 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:15:01.178 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:15:01.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:15:01.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:15:01.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 247.821657
2026-01-22T00:15:01.195 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:15:01.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:01.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:01.844 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:01.844 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:03.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.183/180.0
2026-01-22T00:15:03.197 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:15:03.211 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:15:03.211 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:15:03.211876    Obs time: 2026-01-21 22:19:09
2026-01-22T00:15:03.211 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:05.788124
2026-01-22T00:15:03.211 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  245
2026-01-22T00:15:03.211 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:15:04.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:04.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:04.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:04.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:05.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.038/180.0
2026-01-22T00:15:07.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.969/180.0
2026-01-22T00:15:07.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:07.883 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:07.883 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:07.883 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:09.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.813/180.0
2026-01-22T00:15:10.218 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:15:10.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:10.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:10.885 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:10.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:11.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.768/180.0
2026-01-22T00:15:13.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.599/180.0
2026-01-22T00:15:13.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:13.907 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:13.907 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:13.907 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:15.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.567/180.0
2026-01-22T00:15:16.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:16.911 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:16.911 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:16.911 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:17.690 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.535/180.0
2026-01-22T00:15:19.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.503/180.0
2026-01-22T00:15:19.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:19.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:19.930 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:19.930 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:20.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:15:21.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.386/180.0
2026-01-22T00:15:22.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:22.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:22.934 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:22.934 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:23.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.317/180.0
2026-01-22T00:15:25.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:25.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:25.955 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:25.955 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:26.003 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.247/180.0
2026-01-22T00:15:28.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.191/180.0
2026-01-22T00:15:28.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:28.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:28.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:28.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:30.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.16/180.0
2026-01-22T00:15:30.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:15:31.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:32.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:32.003 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:32.003 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:32.096 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:34.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:35.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:35.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:15:35.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:35.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000331966
2026-01-22T00:15:36.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:38.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:38.031 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000331966
2026-01-22T00:15:38.031 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:38.031 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:38.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:40.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:15:40.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:41.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:41.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:41.034 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:41.034 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:42.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:44.037 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:44.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:44.057 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:44.057 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:44.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:46.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:47.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:47.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:47.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:47.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:48.788 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:50.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:50.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:50.097 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:50.097 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:50.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:15:50.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:52.964 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:15:53.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:15:53.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:15:53.098 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:15:53.098 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:15:53.844 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:15:53.844 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:15:53.863 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:15:56.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:15:56.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-22T00:15:56.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-22T00:15:56.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:15:56.102 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:15:56.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:15:56.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:15:56.102 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:15:56.102 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:15:56.102 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:15:56.102 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:15:56.113 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:15:56.114 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:15:56.114 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:15:56.114 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:15:56.114 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:15:56.181 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:15:57.183 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:15:57.183 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:15:57.183 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:15:57.183 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:15:57.272 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:15:58.273 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:15:58.325 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:15:59.325 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:15:59.326 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.9
2026-01-22T00:15:59.326 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:14:55
2026-01-22T00:15:59.326 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:14:55
2026-01-22T00:15:59.326 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:15:59.326 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09302913385826769
2026-01-22T00:15:59.330 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:15:59.330 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T00:15:59.330 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T00:16:00.262 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:16:00.280 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:15:07.558960
2026-01-22T00:16:00.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:15:07.558960
2026-01-22T00:16:00.280 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:16:00.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:16:00.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:16:00.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:16:00&start_after=2026-01-20T22:16:00&end_after=2026-01-21T22:16:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:16:00.376 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:16:00.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.406 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.409 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.410 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.415 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.418 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.421 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.422 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:00.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:00.424 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:16:00.424 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:16:00.424 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:16:00.424 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:16:00.424 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 188.575015
2026-01-22T00:16:00.425 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:16:02.402 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T00:16:02.402 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:16:02.402 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:16:02.403 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:16:02.403 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:16:02.404 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:16:02.405 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:16:02.406 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:16:02.427 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:16:02.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:16:02.428 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:16:02.428619    Obs time: 2026-01-21 22:19:09
2026-01-22T00:16:02.428 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:06.571381
2026-01-22T00:16:02.428 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  186
2026-01-22T00:16:02.429 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:16:02.509 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:16:02.509 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:16:02.511 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769033762.51152
2026-01-22T00:16:02.903 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:16:02.903 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:16:03.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:16:03.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:16:03.419 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:16:03.419 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:16:06.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:16:06.439 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:16:06.439 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:16:06.439 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:16:08.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233317_13489_13535.json , Iteration 1/1, Unit 2/2 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T00:16:08.774 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:16:08.774 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:16:08.776 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:16:09.435 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:16:09.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:16:10.317 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-22T00:16:10.317 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:16:10.317 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:16:10.418 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:16:10.418 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_EG21_17233317_13489_13535.json was run successfully
2026-01-22T00:16:10.418 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:16:10.418 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:16:10.418 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:16:10.418 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:16:10.419 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:16:10.419 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:16:10.419 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:16:10.919 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:16:10.919 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:16:10.919 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:16:10.919 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:16:10.919 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:16:10.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:16:10.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:16:10.919 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:16:10.920 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:16:10.922 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 03:10:38.25048   Targ dec = -68:29:30.6996
2026-01-22T00:16:10.922 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:16:10.922 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:16:10.922 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:16:10.928 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:16:10.928 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:16:10.928 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:16:10.928 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:16:11.939 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:16:13.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:16:13.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:16:13.941 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:16:14.423 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:16:14.423 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:16:14.423 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512070 COMPLETED 13535 reason
2026-01-22T00:16:14.423 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512070 COMPLETED 13535 reason
2026-01-22T00:16:14.423 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:16:14.423 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:16:14.423 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:16:14.423 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:16:14.423 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:16:14.423 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:16:17.426 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:16:17.426 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:16:19.428 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:16:19.428 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:16:19.428 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T00:16:19.429 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T00:16:19.429 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T00:16:19.430 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T00:16:19.430 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T22:19:09Z
2026-01-22T00:16:19.430 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:16:19.430 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:16:19.430 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:16:19.430 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:16:19.430 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:16:19.430 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:16:19.431 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:16:19.444 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:16:19.931 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:16:19.931 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:16:19.931 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:16:19.931 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:16:19.931 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:16:19.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:16:19.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:16:19.931 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:16:19.931 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:16:19.954 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 03:10:38.415   Targ dec = -68:29:31.02
2026-01-22T00:16:19.954 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:16:19.954 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:16:19.954 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:16:19.962 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:16:19.962 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:16:19.962 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:16:19.962 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:16:21.154 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:16:23.156 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:16:23.156 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:16:23.156 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:16:23.435 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:16:23.435 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:16:23.435 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T00:16:23.435 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T00:16:23.435 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T00:16:23.435 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512070
2026-01-22T00:16:23.435 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T00:16:23.435 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T00:16:23.435 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T22:09:07', 'end': '2026-01-21T22:16:23', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '436.0', 'events': {}}} with config status ID 17512070
2026-01-22T00:16:23.606 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:16:23.606 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:07:55Z', 'guide_off', 'config_id 13535', 'config_status_id 17512070', 'update_OCS 17512070 ATTEMPTED', 'run_script setup_std_star_EG21_17233317_13489_13535.json', 'run_script std_star_EG21_17233317_13489_13535.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512070 COMPLETED 13535 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:19:09Z', 'run_script arc_flat_lamp_off.json'] at time 00:16:23
2026-01-22T00:16:29.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:16:39.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:16:49.474 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:16:59.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:16:59.485 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:16:07.758700
2026-01-22T00:16:59.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:16:07.758700
2026-01-22T00:16:59.485 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:16:59.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:16:59.486 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:16:59.486 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:16:59&start_after=2026-01-20T22:16:59&end_after=2026-01-21T22:16:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:16:59.600 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.600 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.602 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.605 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.606 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.609 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.613 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:16:59.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:16:59.615 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:16:59.615 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:16:59.615 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:16:59.615 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:16:59.615 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 129.384131
2026-01-22T00:16:59.616 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:17:01.618 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:17:01.619 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:17:01.619 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:17:01.619880    Obs time: 2026-01-21 22:19:09
2026-01-22T00:17:01.619 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:07.380120
2026-01-22T00:17:01.619 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  127
2026-01-22T00:17:01.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:17:08.627 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:17:18.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:17:28.647 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:17:38.658 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:17:48.668 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:17:58.679 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:17:58.695 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:17:07.959195
2026-01-22T00:17:58.695 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:17:07.959195
2026-01-22T00:17:58.696 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:17:58.696 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:17:58.696 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:17:58.696 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:17:58&start_after=2026-01-20T22:17:58&end_after=2026-01-21T22:17:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:17:58.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.846 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.849 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:17:58.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:17:58.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:17:58.851 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:17:58.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:17:58.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:17:58.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 70.14808
2026-01-22T00:17:58.852 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:18:00.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:18:00.875 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:18:00.875 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:18:00.875237    Obs time: 2026-01-21 22:19:09
2026-01-22T00:18:00.875 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:08.124763
2026-01-22T00:18:00.875 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  68
2026-01-22T00:18:00.875 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:18:07.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:18:17.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:18:27.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:18:37.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:18:47.922 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:18:57.933 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:18:57.934 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:18:08.157728
2026-01-22T00:18:57.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:18:08.157728
2026-01-22T00:18:57.934 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:18:57.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:18:57.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:18:57.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:18:57&start_after=2026-01-20T22:18:57&end_after=2026-01-21T22:18:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:18:58.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.069 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.070 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.071 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:18:58.074 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:18:58.075 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:18:58.075 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:18:58.075 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:18:58.075 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:18:58.075 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 10.92474
2026-01-22T00:18:58.076 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:19:00.078 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:19:00.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:19:00.087 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:19:00.087290    Obs time: 2026-01-21 22:19:09
2026-01-22T00:19:00.087 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:08.912710
2026-01-22T00:19:00.087 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  8
2026-01-22T00:19:00.087 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:19:07.093 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:19:17.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:19:27.121 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:19:37.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:19:47.152 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:19:57.166 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:19:57.188 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:19:08.358357
2026-01-22T00:19:57.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:19:08.358357
2026-01-22T00:19:57.188 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:19:57.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:19:57.189 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:19:57.189 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:19:57&start_after=2026-01-20T22:19:57&end_after=2026-01-21T22:19:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:19:57.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.312 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.318 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:19:57.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:19:57.397 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:19:57.397 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:19:57.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:19:57.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:19:57.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -48.397936
2026-01-22T00:19:57.399 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:19:59.402 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:19:59.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:19:59.424 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:19:59.424324    Obs time: 2026-01-21 22:19:09
2026-01-22T00:19:59.424 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:09.575676
2026-01-22T00:19:59.424 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86349
2026-01-22T00:19:59.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:19:09Z', 'guide_off', 'config_id 13536', 'config_status_id 17512246', 'update_OCS 17512246 ATTEMPTED', 'run_script setup_std_star_EG21_17233493_13490_13536.json', 'run_script std_star_EG21_17233493_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512246 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:30:23Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:19:59.424 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T00:19:59.425 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T00:19:59.425 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T00:19:59.425 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T00:19:59.426 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:19:59.426 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T00:19:59.428 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T00:19:59.428 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T00:19:59.428 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T00:19:59.428 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T00:19:59.429 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:19:59.429 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:19:59.429 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:19:59.429 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:19:59.429 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:19:59.429 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:20:02.433 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:20:02.433 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:20:04.437 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:20:04.437 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:20:04.437 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T22:19:09Z
2026-01-22T00:20:04.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T22:19:09Z
2026-01-22T00:20:04.437 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:20:04.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:20:04.438 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:20:04.438 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:20:04.438 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:20:04.438 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:20:06.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:20:07.441 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:20:07.442 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:20:09.445 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:20:09.445 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:20:09.445 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13536
2026-01-22T00:20:09.446 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13536
2026-01-22T00:20:09.446 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17512246
2026-01-22T00:20:09.446 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17512246
2026-01-22T00:20:09.446 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512246 ATTEMPTED
2026-01-22T00:20:09.446 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512246 ATTEMPTED
2026-01-22T00:20:09.446 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_EG21_17233493_13490_13536.json
2026-01-22T00:20:09.446 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_EG21_17233493_13490_13536.json
2026-01-22T00:20:09.446 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_EG21_17233493_13490_13536.json
2026-01-22T00:20:09.447 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_EG21_17233493_13490_13536.json
2026-01-22T00:20:09.447 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 3.17534, 'targ_dec': -68.60168610631658, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '03:10:31.21', 'targ_dec': '-68:36:06.07', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_EG21_17233493_13490_13536.json'}
2026-01-22T00:20:09.448 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:20:09.448 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:20:09.448 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T00:20:09.448 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512246
2026-01-22T00:20:09.448 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T00:20:09.448 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T00:20:09.448 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17512246
2026-01-22T00:20:09.512 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:20:09.948 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:20:09.948 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_EG21_17233493_13490_13536.json 1 times
2026-01-22T00:20:09.948 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:20:09.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T00:20:09.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T00:20:09.951 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T00:20:12.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:20:13.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:20:15.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:20:16.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:20:16.448 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:20:17.043 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T00:20:17.043 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  3.17600180899719 is close enough to target ra = 3.17534
2026-01-22T00:20:17.043 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -68.6046866259867 is close enough to target dec = -68.60168610631658
2026-01-22T00:20:17.043 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T00:20:17.043 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:20:17.043 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:20:17.043 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:20:17.043 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:20:17.044 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T00:20:17.044 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T00:20:17.055 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:20:17.055 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:20:17.129 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:20:18.130 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:20:18.131 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:20:18.295 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:20:19.296 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:20:19.348 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:20:20.349 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:20:20.351 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.7
2026-01-22T00:20:20.351 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:19:44
2026-01-22T00:20:20.351 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:19:44
2026-01-22T00:20:20.351 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:20:20.351 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09315039370078738
2026-01-22T00:20:20.355 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T00:20:20.355 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T00:20:20.355 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T00:20:20.364 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:20:20.364 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:20:20.439 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:20:21.440 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:20:21.440 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:20:21.605 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:20:22.606 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:20:22.658 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:20:23.659 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:20:23.660 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.7
2026-01-22T00:20:23.660 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:19:44
2026-01-22T00:20:23.660 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:19:44
2026-01-22T00:20:23.660 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:20:23.660 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09315039370078738
2026-01-22T00:20:26.458 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:20:28.688 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T00:20:28.688 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:20:28.688 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:20:28.688 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:20:28.688 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:20:28.688 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:20:28.690 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:20:28.690 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:20:28.692 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:20:28.803 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:20:28.803 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:20:28.804 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034028.804733
2026-01-22T00:20:34.065 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:20:34.065 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:20:34.067 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:20:34.197 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T00:20:36.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:20:38.201 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T00:20:38.201 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T00:20:38.222 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T00:20:38.222 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:20:38.222 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 03:10:31.21 = 171468.15 arcseconds
2026-01-22T00:20:38.222 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -68:36:06.07 = -246966.07 arcseconds
2026-01-22T00:20:38.222 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T00:20:38.243 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:20:38.243 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.22
2026-01-22T00:20:38.243 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:20:38.243 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (03:10:32.439, -68:36:29.699).
2026-01-22T00:20:38.243 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  03 10 32.439  -68 36 29.699 .
2026-01-22T00:20:38.243 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 03 10 32.439  -68 36 29.699 .
2026-01-22T00:20:38.243 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 171486.585
2026-01-22T00:20:38.243 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -246989.699
2026-01-22T00:20:38.453 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:20:43.480 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T00:20:43.480 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:20:43.480 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:20:43.480 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:20:43.480 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:20:43.480 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:20:43.482 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:20:43.482 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:20:43.484 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:20:43.737 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:20:43.737 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:20:43.739 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034043.7393975
2026-01-22T00:20:44.982 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:20:46.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:20:47.989 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T00:20:47.998 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:20:47.998 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:20:48.016 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:20:51.993 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T00:20:56.487 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:20:56.488 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:20:08.556266
2026-01-22T00:20:56.488 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:20:08.556266
2026-01-22T00:20:56.488 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:20:56.488 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:20:56.488 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:20:56.488 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:20:56&start_after=2026-01-20T22:20:56&end_after=2026-01-21T22:20:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:20:56.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.640 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:20:56.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13536
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:35:00Z
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 843.348747
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:20:56.651284    Obs time: 2026-01-21 22:35:00
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:03.348716
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  843
2026-01-22T00:20:56.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:21:02.042 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T00:21:02.042 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:21:02.042 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 03:10:31.21 = 171468.15 arcseconds
2026-01-22T00:21:02.042 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -68:36:06.07 = -246966.07 arcseconds
2026-01-22T00:21:02.042 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T00:21:02.063 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:21:02.063 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.139
2026-01-22T00:21:02.063 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:21:02.063 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (03:10:20.867, -68:38:46.921).
2026-01-22T00:21:02.063 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  03 10 20.867  -68 38 46.921 .
2026-01-22T00:21:02.063 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 03 10 20.867  -68 38 46.921 .
2026-01-22T00:21:02.063 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 171313.005
2026-01-22T00:21:02.063 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -247126.921
2026-01-22T00:21:02.274 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:21:05.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:21:07.280 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T00:21:07.280 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:21:07.280 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:21:07.280 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:21:07.280 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:21:07.280 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:21:07.282 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:21:07.282 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:21:07.284 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:21:07.371 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:21:07.371 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:21:07.373 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034067.3736002
2026-01-22T00:21:08.782 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:21:11.632 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:21:11.632 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:21:11.655 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:21:11.788 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T00:21:15.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:21:16.403 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] nudge_star_to_slit: 613.2831050040888, 240.76320357728525
2026-01-22T00:21:16.404 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] WCS_Dec_D, rotation_angle =  -68.0, 179.139
2026-01-22T00:21:16.404 [INFO] [script_worker] [instrument.py] [go_nudge_star_to_slit()] Not nudging star. RA nudge (4.296650063883147) is greater than 3
2026-01-22T00:21:18.414 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:21:18.415 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:21:18.415 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:21:18.415 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:21:18.415 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:21:18.417 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:21:18.417 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:21:18.419 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:21:18.807 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:21:18.807 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:21:18.809 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034078.8090057
2026-01-22T00:21:19.916 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:21:23.068 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:21:23.068 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:21:23.070 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:21:23.963 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T00:21:25.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:21:26.399 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  9637  4255  14.6 to host 127.0.0.1 on port 12360
2026-01-22T00:21:26.399 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:21:26.399 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:21:29.402 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  9637  4255  14.6
2026-01-22T00:21:29.402 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  9637  4255  14.6
2026-01-22T00:21:31.404 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:21:35.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:21:45.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:21:55.725 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:21:55.741 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:21:08.756970
2026-01-22T00:21:55.741 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:21:08.756970
2026-01-22T00:21:55.742 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:21:55.742 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:21:55.742 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:21:55.742 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:21:55&start_after=2026-01-20T22:21:55&end_after=2026-01-21T22:21:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:21:55.856 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.857 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.860 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.861 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.863 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.863 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.864 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.865 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.867 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.868 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.869 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.870 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:21:55.871 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13536
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:35:00Z
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 784.127484
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:21:55.872547    Obs time: 2026-01-21 22:35:00
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:04.127453
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  784
2026-01-22T00:21:55.872 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:22:04.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:22:10.443 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T00:22:10.443 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:22:10.443 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:22:13.446 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T00:22:13.447 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T00:22:14.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:22:15.449 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:22:15.449 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:22:15.449 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:22:15.449 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:22:15.449 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:22:15.449 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:22:15.449 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:22:15.449 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:22:16.500 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:22:18.502 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:22:18.502 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:22:18.502 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:22:18.650 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:22:18.650 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_EG21_17233493_13490_13536.json was run successfully
2026-01-22T00:22:18.650 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_EG21_17233493_13490_13536.json
2026-01-22T00:22:18.650 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_EG21_17233493_13490_13536.json
2026-01-22T00:22:18.650 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_EG21_17233493_13490_13536.json
2026-01-22T00:22:18.650 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_EG21_17233493_13490_13536.json
2026-01-22T00:22:18.650 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'EG21', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '03:10:31.21', 'targ_dec': '-68:36:06.07', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_EG21_17233493_13490_13536.json'}
2026-01-22T00:22:18.650 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:22:18.650 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:22:19.151 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:22:19.151 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_EG21_17233493_13490_13536.json 1 times
2026-01-22T00:22:19.151 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-22T00:22:19.151 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:22:19.151 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:22:19.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:22:19.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:22:19.151 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:22:19.151 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:22:19.151 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:22:19.151 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:22:19.161 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:22:19.162 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:22:19.162 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:22:19.163 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:22:19.163 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:22:19.221 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:22:20.222 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:22:20.222 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:22:20.271 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:22:20.271 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:22:20.312 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:22:21.313 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:22:21.365 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:22:22.366 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:22:22.367 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.91
2026-01-22T00:22:22.367 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:21:52
2026-01-22T00:22:22.367 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:21:52
2026-01-22T00:22:22.367 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:22:22.367 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09302307086614171
2026-01-22T00:22:22.371 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:22:22.371 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:22:22.371 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:22:23.558 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:22:24.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:22:25.577 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='03:10:31.21', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-68:36:06.07', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='EG21', comment='The object name')]
2026-01-22T00:22:25.577 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:22:25.577 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:22:25.577 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:22:25.577 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:22:25.579 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:22:25.579 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:22:25.581 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:22:26.005 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:22:26.005 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:22:26.007 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034146.007442
2026-01-22T00:22:26.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:22:26.078 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:22:26.579 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:26.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:26.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:26.599 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:29.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:29.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:29.622 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:29.622 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:31.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.766/180.0
2026-01-22T00:22:32.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:32.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:32.626 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:32.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:33.439 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.6/180.0
2026-01-22T00:22:34.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:22:35.470 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.569/180.0
2026-01-22T00:22:35.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:35.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:35.648 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:35.648 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:37.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.538/180.0
2026-01-22T00:22:38.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:38.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:38.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:38.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:39.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.493/180.0
2026-01-22T00:22:41.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:41.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:41.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:41.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:41.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.323/180.0
2026-01-22T00:22:43.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.292/180.0
2026-01-22T00:22:44.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:44.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:44.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:44.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:44.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:22:45.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.185/180.0
2026-01-22T00:22:47.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:47.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:47.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:47.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:47.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.156/180.0
2026-01-22T00:22:49.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.123/180.0
2026-01-22T00:22:50.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:50.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:22:50.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:50.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:22:51.985 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.079/180.0
2026-01-22T00:22:53.726 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:53.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:22:53.727 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:53.727 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:54.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.022/180.0
2026-01-22T00:22:54.927 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:22:54.945 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:22:08.957052
2026-01-22T00:22:54.945 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:22:08.957052
2026-01-22T00:22:54.945 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:22:54.945 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:22:54.945 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:22:54.945 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:22:54&start_after=2026-01-20T22:22:54&end_after=2026-01-21T22:22:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:22:55.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.065 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.066 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.068 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:22:55.070 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:22:55.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:22:55.071 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:22:55.071 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13536
2026-01-22T00:22:55.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:22:55.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:22:55.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 447.928644
2026-01-22T00:22:55.072 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:22:56.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.005/180.0
2026-01-22T00:22:56.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:56.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:56.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:56.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:22:57.073 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:22:57.074 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:22:57.074 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:22:57.074558    Obs time: 2026-01-21 22:30:23
2026-01-22T00:22:57.074 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:25.925442
2026-01-22T00:22:57.074 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  445
2026-01-22T00:22:57.074 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:22:58.065 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.973/180.0
2026-01-22T00:22:59.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:22:59.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:22:59.754 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:22:59.754 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:00.095 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.943/180.0
2026-01-22T00:23:02.151 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.913/180.0
2026-01-22T00:23:02.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:02.776 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:02.776 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:02.776 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:04.078 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:23:04.207 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.857/180.0
2026-01-22T00:23:05.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:05.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:05.781 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:05.781 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:06.238 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.8/180.0
2026-01-22T00:23:08.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.77/180.0
2026-01-22T00:23:08.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:08.802 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:08.802 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:08.802 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:10.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.739/180.0
2026-01-22T00:23:11.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:11.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:11.824 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:11.825 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:12.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.67/180.0
2026-01-22T00:23:14.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:23:14.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.613/180.0
2026-01-22T00:23:14.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:14.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:14.844 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:14.844 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:16.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.58/180.0
2026-01-22T00:23:17.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:17.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:17.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:17.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:18.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.398/180.0
2026-01-22T00:23:20.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.355/180.0
2026-01-22T00:23:20.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:20.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:20.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:20.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:22.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.185/180.0
2026-01-22T00:23:23.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:23.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:23.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:23.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:24.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:23:24.922 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.141/180.0
2026-01-22T00:23:26.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:26.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:26.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:26.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:26.953 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.085/180.0
2026-01-22T00:23:28.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.055/180.0
2026-01-22T00:23:29.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:29.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:29.897 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:29.897 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:31.053 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.011/180.0
2026-01-22T00:23:32.900 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:32.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:32.917 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:32.917 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:33.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.954/180.0
2026-01-22T00:23:34.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:23:35.255 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.91/180.0
2026-01-22T00:23:35.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:35.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:35.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:35.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:37.300 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.752/180.0
2026-01-22T00:23:38.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:38.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:38.968 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:38.968 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:39.457 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.708/180.0
2026-01-22T00:23:41.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.552/180.0
2026-01-22T00:23:41.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:41.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:41.972 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:41.972 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:43.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.419/180.0
2026-01-22T00:23:44.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:23:44.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:44.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:44.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:44.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:45.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.387/180.0
2026-01-22T00:23:47.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.332/180.0
2026-01-22T00:23:47.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:47.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:47.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:47.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:49.879 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.149/180.0
2026-01-22T00:23:51.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:51.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:51.022 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:51.022 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:52.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.129/180.0
2026-01-22T00:23:54.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:54.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:54.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:54.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:54.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.947/180.0
2026-01-22T00:23:54.122 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:23:54.141 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:23:09.156652
2026-01-22T00:23:54.142 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:23:09.156652
2026-01-22T00:23:54.142 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:23:54.142 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:23:54.142 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:23:54.142 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:23:54&start_after=2026-01-20T22:23:54&end_after=2026-01-21T22:23:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:23:54.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.267 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.276 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:23:54.280 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:23:54.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:23:54.280 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:23:54.280 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13536
2026-01-22T00:23:54.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:23:54.281 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:23:54.281 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 388.718953
2026-01-22T00:23:54.281 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:23:56.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.903/180.0
2026-01-22T00:23:56.284 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:23:56.306 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:23:56.306 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:23:56.306511    Obs time: 2026-01-21 22:30:23
2026-01-22T00:23:56.306 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:26.693489
2026-01-22T00:23:56.306 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  386
2026-01-22T00:23:56.306 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:23:57.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:23:57.027 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:23:57.027 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:23:57.027 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:23:58.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.733/180.0
2026-01-22T00:24:00.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:00.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:00.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:00.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:00.348 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.69/180.0
2026-01-22T00:24:02.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.661/180.0
2026-01-22T00:24:03.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:03.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:03.051 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:03.051 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:03.313 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:24:04.550 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.491/180.0
2026-01-22T00:24:06.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:06.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:06.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:06.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:06.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.458/180.0
2026-01-22T00:24:08.624 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.414/180.0
2026-01-22T00:24:09.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:09.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:09.073 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:09.073 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:10.655 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.383/180.0
2026-01-22T00:24:12.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:12.096 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:12.096 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:12.096 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:12.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.353/180.0
2026-01-22T00:24:13.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:24:14.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.334/180.0
2026-01-22T00:24:15.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:15.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:15.112 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:15.112 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:16.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.303/180.0
2026-01-22T00:24:18.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:18.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:18.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:18.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:18.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 67.247/180.0
2026-01-22T00:24:20.885 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.191/180.0
2026-01-22T00:24:21.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:21.118 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:24:21.118 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:21.118 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:24:22.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.123/180.0
2026-01-22T00:24:23.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:24:24.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:24.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:24:24.122 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:24.122 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:24.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.067/180.0
2026-01-22T00:24:27.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.01/180.0
2026-01-22T00:24:27.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:27.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:27.142 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:27.142 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:29.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.89/180.0
2026-01-22T00:24:30.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:30.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:30.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:30.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:31.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.857/180.0
2026-01-22T00:24:33.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:33.170 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:33.170 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:33.170 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:33.213 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.829/180.0
2026-01-22T00:24:33.338 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:24:35.232 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.795/180.0
2026-01-22T00:24:36.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:36.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:36.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:36.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:37.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.775/180.0
2026-01-22T00:24:39.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:39.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:39.213 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:39.213 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:39.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.733/180.0
2026-01-22T00:24:41.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.713/180.0
2026-01-22T00:24:42.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:42.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:42.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:42.217 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:43.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:24:43.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.556/180.0
2026-01-22T00:24:45.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:45.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:45.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:45.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:45.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.511/180.0
2026-01-22T00:24:47.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.481/180.0
2026-01-22T00:24:48.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:48.243 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:48.243 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:48.243 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:49.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.423/180.0
2026-01-22T00:24:51.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:51.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:51.265 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:51.265 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:51.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.254/180.0
2026-01-22T00:24:53.358 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:24:53.377 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:24:09.357304
2026-01-22T00:24:53.377 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:24:09.357304
2026-01-22T00:24:53.377 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:24:53.377 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:24:53.377 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:24:53.377 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:24:53&start_after=2026-01-20T22:24:53&end_after=2026-01-21T22:24:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:24:53.498 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.505 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.505 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.508 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.511 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.512 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:24:53.513 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:24:53.514 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:24:53.514 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:24:53.514 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13536
2026-01-22T00:24:53.514 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:24:53.514 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:24:53.514 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 329.485124
2026-01-22T00:24:53.515 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:24:54.093 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.097/180.0
2026-01-22T00:24:54.268 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:54.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:54.269 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:54.269 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:55.517 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:24:55.539 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:24:55.539 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:24:55.539106    Obs time: 2026-01-21 22:30:23
2026-01-22T00:24:55.539 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:27.460894
2026-01-22T00:24:55.539 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  327
2026-01-22T00:24:55.539 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:24:56.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.914/180.0
2026-01-22T00:24:57.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:24:57.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:24:57.289 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:24:57.289 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:24:58.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.871/180.0
2026-01-22T00:25:00.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:00.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:00.293 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:00.293 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:00.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.714/180.0
2026-01-22T00:25:02.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.681/180.0
2026-01-22T00:25:02.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:25:03.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:03.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:03.313 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:03.313 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:04.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.664/180.0
2026-01-22T00:25:06.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:06.314 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:06.314 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:06.314 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:06.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.618/180.0
2026-01-22T00:25:08.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.562/180.0
2026-01-22T00:25:09.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:09.335 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:09.335 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:09.335 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:10.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.38/180.0
2026-01-22T00:25:12.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:12.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:12.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:12.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:12.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:25:12.829 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.21/180.0
2026-01-22T00:25:14.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.179/180.0
2026-01-22T00:25:15.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:15.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:15.359 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:15.359 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:17.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.148/180.0
2026-01-22T00:25:18.363 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:18.363 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:18.363 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:18.363 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:19.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.991/180.0
2026-01-22T00:25:21.193 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.973/180.0
2026-01-22T00:25:21.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:21.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:21.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:21.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:22.558 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:25:23.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.816/180.0
2026-01-22T00:25:24.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:24.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:24.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:24.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:25.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.784/180.0
2026-01-22T00:25:27.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:27.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:27.390 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:27.391 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:27.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:29.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:30.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:30.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:30.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:30.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:31.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:32.569 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:25:33.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:33.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:33.417 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:33.417 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:33.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:35.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:36.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:36.435 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:36.435 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:36.435 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:37.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:39.438 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:39.459 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:39.459 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:39.459 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:39.989 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:42.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:42.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:42.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:42.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:42.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:42.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:25:44.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:45.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:45.487 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:45.487 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:45.487 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:46.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:48.379 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:25:48.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:48.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:25:48.491 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:48.491 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:25:49.740 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:25:49.741 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:25:49.762 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:25:51.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:25:51.494 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-22T00:25:51.494 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-22T00:25:51.494 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:25:51.494 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:25:51.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:25:51.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:25:51.494 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:25:51.494 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:25:51.494 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:25:51.494 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:25:51.503 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:25:51.505 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:25:51.505 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:25:51.505 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:25:51.505 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:25:51.559 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:25:52.560 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:25:52.560 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:25:52.560 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:25:52.560 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:25:52.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:25:52.589 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:25:09.556588
2026-01-22T00:25:52.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:25:09.556588
2026-01-22T00:25:52.589 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:25:52.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:25:52.589 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:25:52.589 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:25:52&start_after=2026-01-20T22:25:52&end_after=2026-01-21T22:25:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:25:52.612 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:25:52.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.706 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.709 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.718 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:25:52.721 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:25:52.721 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:25:52.721 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:25:52.721 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13536
2026-01-22T00:25:52.722 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:25:52.722 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:25:52.722 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 270.277927
2026-01-22T00:25:52.722 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:25:53.613 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:25:53.665 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:25:54.666 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:25:54.667 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.03
2026-01-22T00:25:54.667 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:25:05
2026-01-22T00:25:54.667 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:25:05
2026-01-22T00:25:54.667 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:25:54.667 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0929503149606299
2026-01-22T00:25:54.671 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:25:54.671 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T00:25:54.671 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T00:25:54.724 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:25:54.725 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:25:54.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:25:54.725766    Obs time: 2026-01-21 22:30:23
2026-01-22T00:25:54.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:28.274234
2026-01-22T00:25:54.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  268
2026-01-22T00:25:54.725 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:25:55.853 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:25:57.876 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T00:25:57.876 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:25:57.876 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:25:57.876 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:25:57.876 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:25:57.878 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:25:57.878 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:25:57.880 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:25:58.202 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:25:58.202 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:25:58.204 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034358.204221
2026-01-22T00:25:58.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:25:58.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:25:58.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:25:58.896 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0009999999999763531
2026-01-22T00:25:58.896 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:25:58.896 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:26:01.733 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:26:01.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:26:01.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: -0.0009999999999763531
2026-01-22T00:26:01.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:26:01.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:26:03.720 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233493_13490_13536.json , Iteration 1/1, Unit 2/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T00:26:04.466 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:26:04.466 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:26:04.468 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:26:04.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:26:05.722 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-22T00:26:05.722 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:26:05.722 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:26:05.851 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:26:05.851 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_EG21_17233493_13490_13536.json was run successfully
2026-01-22T00:26:05.851 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:26:05.851 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:26:05.851 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:26:05.851 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:26:05.851 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:26:05.851 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:26:05.851 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:26:06.352 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:26:06.352 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:26:06.352 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:26:06.352 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:26:06.352 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:26:06.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:26:06.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:26:06.352 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:26:06.352 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:26:06.354 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 03:10:38.62596   Targ dec = -68:32:54.0204
2026-01-22T00:26:06.354 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:26:06.354 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:26:06.354 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:26:06.361 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:26:06.361 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:26:06.361 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:26:06.361 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:26:07.405 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:26:09.407 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:26:09.407 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:26:09.407 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:26:09.855 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:26:09.855 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:26:09.855 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512246 COMPLETED 13536 reason
2026-01-22T00:26:09.855 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512246 COMPLETED 13536 reason
2026-01-22T00:26:09.856 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:26:09.856 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:26:09.856 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:26:09.856 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:26:09.856 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:26:09.856 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:26:11.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:26:12.859 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:26:12.859 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:26:14.861 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:26:14.861 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:26:14.861 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T00:26:14.861 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T00:26:14.861 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T00:26:14.863 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T00:26:14.863 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T22:30:23Z
2026-01-22T00:26:14.863 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:26:14.863 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:26:14.863 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:26:14.863 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:26:14.863 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:26:14.864 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:26:14.864 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:26:15.364 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:26:15.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:26:15.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:26:15.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:26:15.364 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:26:15.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:26:15.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:26:15.364 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:26:15.365 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:26:15.385 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 03:10:38.85528   Targ dec = -68:32:53.5308
2026-01-22T00:26:15.386 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:26:15.386 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:26:15.386 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:26:15.525 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:26:15.525 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:26:15.525 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:26:15.525 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:26:16.584 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:26:18.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:26:18.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:26:18.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:26:18.868 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:26:18.868 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:26:18.868 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T00:26:18.868 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T00:26:18.868 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T00:26:18.868 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512246
2026-01-22T00:26:18.868 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T00:26:18.868 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T00:26:18.868 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T22:19:59', 'end': '2026-01-21T22:26:18', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '379.0', 'events': {}}} with config status ID 17512246
2026-01-22T00:26:19.049 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:26:19.049 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:19:09Z', 'guide_off', 'config_id 13536', 'config_status_id 17512246', 'update_OCS 17512246 ATTEMPTED', 'run_script setup_std_star_EG21_17233493_13490_13536.json', 'run_script std_star_EG21_17233493_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512246 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:30:23Z', 'run_script arc_flat_lamp_off.json'] at time 00:26:19
2026-01-22T00:26:21.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:26:31.764 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:26:41.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:26:51.785 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:26:51.786 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:26:09.756211
2026-01-22T00:26:51.786 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:26:09.756211
2026-01-22T00:26:51.786 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:26:51.786 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:26:51.786 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:26:51.786 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:26:51&start_after=2026-01-20T22:26:51&end_after=2026-01-21T22:26:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:26:51.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.917 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:26:51.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:26:51.920 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:26:51.920 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 14 configurations
2026-01-22T00:26:51.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:26:51.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:19:09Z
2026-01-22T00:26:51.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -462.92062
2026-01-22T00:26:51.921 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:26:53.923 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:26:53.924 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:26:53.924 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:26:53.924426    Obs time: 2026-01-21 22:19:09
2026-01-22T00:26:53.924 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:52:15.075574
2026-01-22T00:26:53.924 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85935
2026-01-22T00:26:53.924 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:19:09Z', 'guide_off', 'config_id 13536', 'config_status_id 17512290', 'update_OCS 17512290 ATTEMPTED', 'run_script setup_std_star_EG21_17233537_13490_13536.json', 'run_script std_star_EG21_17233537_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512290 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:30:23Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:26:53.924 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T00:26:53.924 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T00:26:53.924 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:26:53.924 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T00:26:53.925 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T00:26:53.925 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:26:53.925 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:26:53.925 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:26:53.925 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:26:53.925 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:26:56.929 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:26:56.929 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:26:58.931 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:26:58.931 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:26:58.979 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T22:19:09Z
2026-01-22T00:26:58.980 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T22:19:09Z
2026-01-22T00:26:58.980 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:26:58.980 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:26:58.980 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:26:58.980 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:26:58.980 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:26:58.980 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:27:00.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:27:01.983 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:27:01.983 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:27:03.985 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:27:03.985 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:27:03.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13536
2026-01-22T00:27:03.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13536
2026-01-22T00:27:03.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17512290
2026-01-22T00:27:03.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17512290
2026-01-22T00:27:03.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512290 ATTEMPTED
2026-01-22T00:27:03.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512290 ATTEMPTED
2026-01-22T00:27:03.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_EG21_17233537_13490_13536.json
2026-01-22T00:27:03.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_EG21_17233537_13490_13536.json
2026-01-22T00:27:03.994 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_EG21_17233537_13490_13536.json
2026-01-22T00:27:03.994 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_EG21_17233537_13490_13536.json
2026-01-22T00:27:03.995 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 3.17534, 'targ_dec': -68.60168610631658, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '03:10:31.21', 'targ_dec': '-68:36:06.07', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_EG21_17233537_13490_13536.json'}
2026-01-22T00:27:03.995 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:27:03.995 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:27:03.995 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T00:27:03.995 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512290
2026-01-22T00:27:03.995 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T00:27:03.995 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T00:27:03.995 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17512290
2026-01-22T00:27:04.064 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:27:04.495 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:27:04.495 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_EG21_17233537_13490_13536.json 1 times
2026-01-22T00:27:04.495 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:27:04.497 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T00:27:04.497 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T00:27:04.497 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T00:27:07.523 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:27:08.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:27:09.564 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:27:10.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T00:27:10.586 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  3.17599919694784 is close enough to target ra = 3.17534
2026-01-22T00:27:10.586 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -68.6047956968157 is close enough to target dec = -68.60168610631658
2026-01-22T00:27:10.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T00:27:10.586 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:27:10.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:27:10.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:27:10.586 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:27:10.587 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T00:27:10.587 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T00:27:10.599 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:27:10.599 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:27:10.671 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:27:10.942 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:27:11.672 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:27:11.672 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:27:11.724 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:27:12.725 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:27:12.777 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:27:13.778 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:27:13.780 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.06
2026-01-22T00:27:13.780 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:26:41
2026-01-22T00:27:13.780 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:26:41
2026-01-22T00:27:13.780 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:27:13.780 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09293212598425195
2026-01-22T00:27:13.783 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T00:27:13.783 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T00:27:13.783 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T00:27:13.792 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:27:13.792 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:27:13.830 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:27:14.831 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:27:14.831 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:27:14.958 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:27:15.959 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:27:16.011 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:27:17.012 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:27:17.014 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.06
2026-01-22T00:27:17.014 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:26:41
2026-01-22T00:27:17.014 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:26:41
2026-01-22T00:27:17.014 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:27:17.014 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09293212598425195
2026-01-22T00:27:20.952 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:27:22.045 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T00:27:22.045 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:27:22.045 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:27:22.045 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:27:22.045 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:27:22.045 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:27:22.047 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:27:22.047 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:27:22.066 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:27:22.197 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:27:22.197 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:27:22.199 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034442.1996858
2026-01-22T00:27:27.461 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:27:27.461 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:27:27.463 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:27:27.553 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T00:27:30.962 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:27:31.556 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T00:27:31.556 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T00:27:40.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:27:41.608 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T00:27:41.608 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:27:41.608 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 03:10:31.21 = 171468.15 arcseconds
2026-01-22T00:27:41.608 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -68:36:06.07 = -246966.07 arcseconds
2026-01-22T00:27:41.608 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T00:27:41.627 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:27:41.627 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.217
2026-01-22T00:27:41.627 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:27:41.627 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (03:10:32.437, -68:36:30.922).
2026-01-22T00:27:41.628 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  03 10 32.437  -68 36 30.922 .
2026-01-22T00:27:41.628 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 03 10 32.437  -68 36 30.922 .
2026-01-22T00:27:41.628 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 171486.555
2026-01-22T00:27:41.628 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -246990.922
2026-01-22T00:27:41.840 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:27:46.846 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T00:27:46.846 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:27:46.846 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:27:46.846 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:27:46.846 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:27:46.846 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:27:46.848 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:27:46.848 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:27:46.850 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:27:47.216 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:27:47.216 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:27:47.218 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034467.2180946
2026-01-22T00:27:48.347 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:27:50.982 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:27:50.983 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:27:09.954356
2026-01-22T00:27:50.983 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:27:09.954356
2026-01-22T00:27:50.983 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:27:50.983 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:27:50.983 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:27:50.983 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:27:50&start_after=2026-01-20T22:27:50&end_after=2026-01-21T22:27:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:27:51.103 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.105 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:27:51.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:27:51.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:27:51.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:27:51.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:27:51.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:27:51.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:27:51.119 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:27:51.119 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:27:51.119 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:27:51.119 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:27:51.119 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 151.880752
2026-01-22T00:27:51.120 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:27:51.477 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:27:51.477 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:27:51.479 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:27:52.355 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T00:27:53.122 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:27:53.122 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:27:53.123 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:27:53.122994    Obs time: 2026-01-21 22:30:23
2026-01-22T00:27:53.123 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:29.877006
2026-01-22T00:27:53.123 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  149
2026-01-22T00:27:53.123 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:27:56.359 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T00:27:56.380 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T00:27:56.380 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:27:56.380 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 03:10:31.21 = 171468.15 arcseconds
2026-01-22T00:27:56.380 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -68:36:06.07 = -246966.07 arcseconds
2026-01-22T00:27:56.380 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T00:27:56.401 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:27:56.401 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.158
2026-01-22T00:27:56.401 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:27:56.401 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (03:10:20.809, -68:38:46.497).
2026-01-22T00:27:56.401 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  03 10 20.809  -68 38 46.497 .
2026-01-22T00:27:56.401 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 03 10 20.809  -68 38 46.497 .
2026-01-22T00:27:56.401 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 171312.13499999998
2026-01-22T00:27:56.401 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -247126.497
2026-01-22T00:27:56.614 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:28:00.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:28:01.638 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T00:28:01.638 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:28:01.638 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:28:01.638 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:28:01.638 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:28:01.638 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:28:01.640 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:28:01.640 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:28:01.642 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:28:01.748 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:28:01.748 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:28:01.750 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034481.7506528
2026-01-22T00:28:03.140 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:28:06.010 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:28:06.010 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:28:06.032 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:28:06.146 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T00:28:10.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:28:10.725 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] nudge_star_to_slit: 613.3348715420267, 240.6711196325533
2026-01-22T00:28:10.725 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] WCS_Dec_D, rotation_angle =  -68.0, 179.158
2026-01-22T00:28:10.725 [INFO] [script_worker] [instrument.py] [go_nudge_star_to_slit()] Not nudging star. RA nudge (4.212618586547055) is greater than 3
2026-01-22T00:28:12.756 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:28:12.756 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:28:12.756 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:28:12.756 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:28:12.756 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:28:12.758 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:28:12.758 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:28:12.760 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:28:13.187 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:28:13.187 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:28:13.189 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034493.1895804
2026-01-22T00:28:14.258 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:28:17.449 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:28:17.449 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:28:17.451 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:28:18.310 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T00:28:20.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:28:20.737 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  9637  4255  14.6 to host 127.0.0.1 on port 12360
2026-01-22T00:28:20.737 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:28:20.737 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:28:23.738 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  9637  4255  14.6
2026-01-22T00:28:23.738 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  9637  4255  14.6
2026-01-22T00:28:25.739 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:28:30.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:28:40.207 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:28:50.217 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:28:50.218 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:28:10.164139
2026-01-22T00:28:50.218 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:28:10.164139
2026-01-22T00:28:50.218 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:28:50.218 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:28:50.218 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:28:50.218 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:28:50&start_after=2026-01-20T22:28:50&end_after=2026-01-21T22:28:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:28:50.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.369 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.370 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:28:50.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:28:50.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:28:50.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:28:50.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.379 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:28:50.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:28:50.381 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:28:50.382 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:28:50.382 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:28:50.382 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:28:50.382 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:28:50.382 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 92.617183
2026-01-22T00:28:50.383 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:28:52.385 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:28:52.386 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:28:52.394 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:28:52.394984    Obs time: 2026-01-21 22:30:23
2026-01-22T00:28:52.395 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:30.605016
2026-01-22T00:28:52.395 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  90
2026-01-22T00:28:52.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:28:59.402 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:29:04.778 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T00:29:04.778 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:29:04.778 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:29:07.781 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T00:29:07.781 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T00:29:09.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:29:09.783 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:29:09.783 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:29:09.783 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:29:09.783 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:29:09.783 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:29:09.783 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:29:09.783 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:29:09.783 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:29:10.826 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:29:12.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:29:12.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:29:12.828 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:29:13.205 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:29:13.205 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_EG21_17233537_13490_13536.json was run successfully
2026-01-22T00:29:13.254 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_EG21_17233537_13490_13536.json
2026-01-22T00:29:13.254 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_EG21_17233537_13490_13536.json
2026-01-22T00:29:13.254 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_EG21_17233537_13490_13536.json
2026-01-22T00:29:13.254 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_EG21_17233537_13490_13536.json
2026-01-22T00:29:13.254 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'EG21', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '03:10:31.21', 'targ_dec': '-68:36:06.07', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_EG21_17233537_13490_13536.json'}
2026-01-22T00:29:13.254 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:29:13.254 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:29:13.755 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:29:13.755 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_EG21_17233537_13490_13536.json 1 times
2026-01-22T00:29:13.755 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-22T00:29:13.755 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:29:13.755 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:29:13.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:29:13.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:29:13.755 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:29:13.755 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:29:13.755 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:29:13.755 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:29:13.765 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:29:13.766 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:29:13.766 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:29:13.766 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:29:13.766 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:29:13.816 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:29:14.817 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:29:14.817 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:29:14.817 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:29:14.817 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:29:14.981 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:29:15.982 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:29:16.034 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:29:17.035 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:29:17.037 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.83
2026-01-22T00:29:17.037 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:28:50
2026-01-22T00:29:17.037 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:28:50
2026-01-22T00:29:17.037 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:29:17.037 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09307157480314959
2026-01-22T00:29:17.040 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:29:17.040 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:29:17.041 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:29:18.151 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:29:19.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:29:20.154 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='03:10:31.21', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-68:36:06.07', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='EG21', comment='The object name')]
2026-01-22T00:29:20.154 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:29:20.154 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:29:20.154 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:29:20.154 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:29:20.156 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:29:20.156 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:29:20.158 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:29:20.537 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:29:20.537 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:29:20.538 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034560.5389378
2026-01-22T00:29:20.655 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:29:20.655 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:29:21.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:21.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:21.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:21.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:24.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:24.175 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:24.175 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:24.175 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:25.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.776/180.0
2026-01-22T00:29:27.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:27.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:27.195 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:27.195 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:27.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.737/180.0
2026-01-22T00:29:29.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:29:30.019 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.681/180.0
2026-01-22T00:29:30.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:30.214 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:30.214 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:30.214 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:32.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.521/180.0
2026-01-22T00:29:33.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:33.236 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:33.236 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:33.236 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:34.106 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.477/180.0
2026-01-22T00:29:36.237 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:36.257 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:36.257 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:36.257 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:36.300 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.433/180.0
2026-01-22T00:29:38.469 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.239/180.0
2026-01-22T00:29:39.260 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:39.279 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:39.279 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:39.279 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:39.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:29:40.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.07/180.0
2026-01-22T00:29:42.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:42.283 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:42.283 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:42.283 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:42.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.001/180.0
2026-01-22T00:29:44.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 155.945/180.0
2026-01-22T00:29:45.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:45.306 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:45.306 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:45.306 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:46.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.926/180.0
2026-01-22T00:29:48.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:48.331 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:48.331 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:48.331 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:48.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.745/180.0
2026-01-22T00:29:49.451 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:29:49.452 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:29:10.364492
2026-01-22T00:29:49.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:29:10.364492
2026-01-22T00:29:49.452 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:29:49.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:29:49.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:29:49.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:29:49&start_after=2026-01-20T22:29:49&end_after=2026-01-21T22:29:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:29:49.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:29:49.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:29:49.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:29:49.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:29:49.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:29:49.586 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:29:49.588 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:29:49.588 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:29:49.589 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:29:49.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:29:49.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:29:49.589 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 33.410767
2026-01-22T00:29:49.590 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:29:50.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.669/180.0
2026-01-22T00:29:51.334 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:51.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:29:51.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:51.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:51.592 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:29:51.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:29:51.593 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:29:51.593625    Obs time: 2026-01-21 22:30:23
2026-01-22T00:29:51.593 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:31.406375
2026-01-22T00:29:51.593 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  31
2026-01-22T00:29:51.593 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:29:52.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.645/180.0
2026-01-22T00:29:54.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:54.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:29:54.358 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:54.358 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:29:54.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.601/180.0
2026-01-22T00:29:57.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.557/180.0
2026-01-22T00:29:57.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:29:57.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:29:57.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:29:57.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:29:58.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:29:59.072 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.5/180.0
2026-01-22T00:30:00.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:00.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:00.381 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:00.381 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:01.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.467/180.0
2026-01-22T00:30:03.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.437/180.0
2026-01-22T00:30:03.382 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:03.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:03.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:03.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:05.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.38/180.0
2026-01-22T00:30:06.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:06.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:06.425 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:06.425 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:07.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.186/180.0
2026-01-22T00:30:08.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:30:09.428 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:09.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:09.449 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:09.449 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:09.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.129/180.0
2026-01-22T00:30:11.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 128.908/180.0
2026-01-22T00:30:12.452 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:12.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:12.469 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:12.469 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:13.832 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 126.889/180.0
2026-01-22T00:30:15.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:15.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:15.491 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:15.491 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:15.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 124.707/180.0
2026-01-22T00:30:17.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 122.665/180.0
2026-01-22T00:30:18.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:18.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:18.494 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:18.494 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:18.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:30:20.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.57/180.0
2026-01-22T00:30:21.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:21.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:21.498 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:21.498 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:22.033 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.527/180.0
2026-01-22T00:30:24.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.508/180.0
2026-01-22T00:30:24.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:24.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:24.517 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:24.517 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:26.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.349/180.0
2026-01-22T00:30:27.520 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:27.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:30:27.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:27.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:30:28.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.33/180.0
2026-01-22T00:30:28.625 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:30:30.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.135/180.0
2026-01-22T00:30:30.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:30.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0009999999999763531
2026-01-22T00:30:30.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:30.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:30:32.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.078/180.0
2026-01-22T00:30:33.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:33.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:30:33.569 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:33.569 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:34.762 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.049/180.0
2026-01-22T00:30:36.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:36.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:36.592 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:36.592 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:36.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.778/180.0
2026-01-22T00:30:38.635 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:30:39.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.733/180.0
2026-01-22T00:30:39.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:39.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:39.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:39.614 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:41.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.501/180.0
2026-01-22T00:30:42.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:42.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:42.640 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:42.640 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:43.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.47/180.0
2026-01-22T00:30:45.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.439/180.0
2026-01-22T00:30:45.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:45.666 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:45.666 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:45.666 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:47.199 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.409/180.0
2026-01-22T00:30:48.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:30:48.645 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:30:10.562369
2026-01-22T00:30:48.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:30:10.562369
2026-01-22T00:30:48.645 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:30:48.645 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:30:48.646 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:30:48.646 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:30:48&start_after=2026-01-20T22:30:48&end_after=2026-01-21T22:30:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:30:48.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:48.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:48.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:48.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:48.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:30:48.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:30:48.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:30:48.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:30:48.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:30:48.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:30:48.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:30:48.785 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:30:48.785 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:30:48.785 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:30:48.785 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:30:48.785 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -25.785264
2026-01-22T00:30:48.786 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:30:49.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.341/180.0
2026-01-22T00:30:50.788 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:30:50.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:30:50.789 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:30:50.789036    Obs time: 2026-01-21 22:30:23
2026-01-22T00:30:50.789 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:32.210964
2026-01-22T00:30:50.789 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86372
2026-01-22T00:30:50.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:30:23Z', 'guide_off', 'config_id 13526', 'config_status_id 17512459', 'update_OCS 17512459 ATTEMPTED', 'run_script setup_AT2025xvcPhot_17233706_13480_13526.json', 'run_script AT2025xvcPhot_17233706_13480_13526.json', 'update_OCS 17512459 COMPLETED 13526 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:43:49Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:30:50.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:30:51.525 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.059/180.0
2026-01-22T00:30:51.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:51.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:51.688 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:51.688 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:53.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.014/180.0
2026-01-22T00:30:54.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:54.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:54.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:54.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:55.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.997/180.0
2026-01-22T00:30:57.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:30:57.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:30:57.713 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:30:57.713 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:30:57.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.965/180.0
2026-01-22T00:30:57.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:30:59.988 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.758/180.0
2026-01-22T00:31:00.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:00.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:00.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:00.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:02.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.553/180.0
2026-01-22T00:31:03.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:03.759 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:03.759 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:03.759 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:04.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.533/180.0
2026-01-22T00:31:06.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.3/180.0
2026-01-22T00:31:06.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:06.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:06.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:06.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:07.804 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:31:08.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.271/180.0
2026-01-22T00:31:09.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:09.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:09.786 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:09.786 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:10.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.253/180.0
2026-01-22T00:31:12.389 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.208/180.0
2026-01-22T00:31:12.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:12.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:12.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:12.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:14.420 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.151/180.0
2026-01-22T00:31:15.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:15.812 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:31:15.812 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:15.812 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:31:16.552 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.121/180.0
2026-01-22T00:31:17.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:31:18.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:18.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:31:18.833 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:18.833 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:18.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 61.988/180.0
2026-01-22T00:31:20.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 59.632/180.0
2026-01-22T00:31:21.836 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:21.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:21.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:21.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:23.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 57.575/180.0
2026-01-22T00:31:24.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:24.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:24.843 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:24.843 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:25.141 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 55.443/180.0
2026-01-22T00:31:27.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 53.398/180.0
2026-01-22T00:31:27.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:31:27.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:27.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:27.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:27.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:29.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 51.368/180.0
2026-01-22T00:31:30.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:30.867 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:30.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:30.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:31.374 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 49.198/180.0
2026-01-22T00:31:33.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.166/180.0
2026-01-22T00:31:33.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:33.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:33.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:33.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:35.599 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.137/180.0
2026-01-22T00:31:36.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:36.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:36.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:36.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:37.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.941/180.0
2026-01-22T00:31:37.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:31:39.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.921/180.0
2026-01-22T00:31:39.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:39.939 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:39.939 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:39.939 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:41.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.891/180.0
2026-01-22T00:31:42.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:42.943 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:42.943 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:42.943 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:43.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.861/180.0
2026-01-22T00:31:45.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.817/180.0
2026-01-22T00:31:45.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:45.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:45.967 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:45.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:47.841 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:31:47.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.748/180.0
2026-01-22T00:31:47.862 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:31:10.762690
2026-01-22T00:31:47.862 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:31:10.762690
2026-01-22T00:31:47.862 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:31:47.862 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:31:47.862 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:31:47.862 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:31:47&start_after=2026-01-20T22:31:47&end_after=2026-01-21T22:31:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:31:47.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.979 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.981 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:31:47.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:31:47.983 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:31:47.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:31:47.985 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.986 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:31:47.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:31:47.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:31:47.993 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:31:47.993 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:31:47.993 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:31:47.993 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:31:47.994 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -84.99404
2026-01-22T00:31:47.994 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:31:48.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:48.990 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:48.991 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:48.991 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:49.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:31:50.018 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:31:50.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:31:50.018431    Obs time: 2026-01-21 22:30:23
2026-01-22T00:31:50.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:32.981569
2026-01-22T00:31:50.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86312
2026-01-22T00:31:50.018 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:30:23Z', 'guide_off', 'config_id 13526', 'config_status_id 17512480', 'update_OCS 17512480 ATTEMPTED', 'run_script setup_AT2025xvcPhot_17233727_13480_13526.json', 'run_script AT2025xvcPhot_17233727_13480_13526.json', 'update_OCS 17512480 COMPLETED 13526 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:43:49Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:31:50.018 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:31:50.054 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.68/180.0
2026-01-22T00:31:51.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:52.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:52.010 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:52.010 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:52.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.486/180.0
2026-01-22T00:31:54.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.428/180.0
2026-01-22T00:31:55.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:55.031 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:55.031 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:55.031 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:56.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.385/180.0
2026-01-22T00:31:57.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:31:58.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:31:58.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:31:58.051 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:31:58.051 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:31:58.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.353/180.0
2026-01-22T00:32:00.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.309/180.0
2026-01-22T00:32:01.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:01.055 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:01.055 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:01.055 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:02.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.278/180.0
2026-01-22T00:32:04.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:04.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:04.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:04.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:04.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.261/180.0
2026-01-22T00:32:06.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.177/180.0
2026-01-22T00:32:07.036 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:32:07.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:07.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:07.078 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:07.078 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:08.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.106/180.0
2026-01-22T00:32:10.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:10.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:10.101 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:10.101 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:10.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.913/180.0
2026-01-22T00:32:12.853 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.705/180.0
2026-01-22T00:32:13.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:13.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:13.122 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:13.122 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:14.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.686/180.0
2026-01-22T00:32:16.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:16.143 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:16.143 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:16.143 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:16.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.657/180.0
2026-01-22T00:32:17.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:32:18.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.625/180.0
2026-01-22T00:32:19.145 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:19.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:19.161 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:19.161 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:20.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:22.164 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:22.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:22.165 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:22.165 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:23.060 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:25.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:25.168 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:25.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:25.169 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:25.169 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:27.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:32:27.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:28.172 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:28.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:28.193 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:28.193 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:29.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:31.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:31.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:32:31.214 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:31.214 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:32:31.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:33.631 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:34.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:34.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:32:34.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:34.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:35.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:37.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:32:37.237 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:37.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:32:37.238 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:37.238 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:32:37.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:39.863 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:40.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:40.258 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:32:40.258 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:40.258 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:41.894 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:43.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:43.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:43.262 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:43.262 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:43.924 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T00:32:44.146 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:32:44.146 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:32:44.169 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:32:46.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:32:46.265 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-22T00:32:46.265 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-22T00:32:46.265 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:32:46.265 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:32:46.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:32:46.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:32:46.265 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:32:46.265 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:32:46.265 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:32:46.265 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:32:46.277 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:32:46.278 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:32:46.278 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:32:46.278 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:32:46.278 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:32:46.348 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:32:47.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:32:47.072 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:32:10.968186
2026-01-22T00:32:47.072 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:32:10.968186
2026-01-22T00:32:47.072 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:32:47.072 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:32:47.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:32:47.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:32:47&start_after=2026-01-20T22:32:47&end_after=2026-01-21T22:32:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:32:47.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:32:47.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:32:47.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:32:47.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:32:47.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:32:47.204 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:32:47.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:32:47.206 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:32:47.206 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:32:47.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:32:47.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:32:47.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -144.206839
2026-01-22T00:32:47.207 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:32:47.349 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:32:47.349 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T00:32:47.349 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:32:47.349 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:32:47.514 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:32:48.515 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:32:48.567 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:32:49.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:32:49.231 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:32:49.231 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:32:49.231258    Obs time: 2026-01-21 22:30:23
2026-01-22T00:32:49.231 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:33.768742
2026-01-22T00:32:49.231 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86253
2026-01-22T00:32:49.231 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:30:23Z', 'guide_off', 'config_id 13526', 'config_status_id 17512501', 'update_OCS 17512501 ATTEMPTED', 'run_script setup_AT2025xvcPhot_17233748_13480_13526.json', 'run_script AT2025xvcPhot_17233748_13480_13526.json', 'update_OCS 17512501 COMPLETED 13526 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:43:49Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:32:49.231 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:32:49.568 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:32:49.569 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.7
2026-01-22T00:32:49.570 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:32:03
2026-01-22T00:32:49.570 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:32:03
2026-01-22T00:32:49.570 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:32:49.570 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09315039370078738
2026-01-22T00:32:49.573 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T00:32:49.573 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T00:32:49.573 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T00:32:50.621 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:32:52.624 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T00:32:52.624 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:32:52.625 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:32:52.625 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:32:52.625 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:32:52.627 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:32:52.627 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:32:52.628 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:32:53.083 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:32:53.083 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:32:53.085 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034773.085034
2026-01-22T00:32:53.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:32:53.125 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:32:53.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:53.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:53.648 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:53.648 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:56.237 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:32:56.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:32:56.651 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:32:56.651 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:32:56.651 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:32:58.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_EG21_17233537_13490_13536.json , Iteration 1/1, Unit 2/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T00:32:59.347 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:32:59.347 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:32:59.349 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:32:59.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:33:00.201 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-22T00:33:00.201 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:33:00.201 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:33:00.467 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:33:00.467 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_EG21_17233537_13490_13536.json was run successfully
2026-01-22T00:33:00.467 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:33:00.467 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:33:00.467 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:33:00.467 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:33:00.467 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:33:00.467 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:33:00.467 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:33:00.968 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:33:00.968 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:33:00.968 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:33:00.968 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:33:00.968 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:33:00.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:33:00.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:33:00.968 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:33:00.968 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:33:00.970 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 03:10:38.58456   Targ dec = -68:32:52.6956
2026-01-22T00:33:00.970 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:33:00.970 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:33:00.970 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:33:00.976 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:33:00.976 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:33:00.976 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:33:00.976 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:33:02.046 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:33:04.049 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:33:04.049 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:33:04.049 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:33:04.471 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:33:04.471 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:33:04.471 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512290 COMPLETED 13536 reason
2026-01-22T00:33:04.471 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512290 COMPLETED 13536 reason
2026-01-22T00:33:04.471 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:33:04.471 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:33:04.471 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:33:04.471 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:33:04.471 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:33:04.471 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:33:06.247 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:33:07.473 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:33:07.473 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:33:09.475 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:33:09.475 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:33:09.475 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T00:33:09.475 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T00:33:09.475 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T00:33:09.479 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T00:33:09.479 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T22:30:23Z
2026-01-22T00:33:09.479 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:33:09.479 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:33:09.479 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:33:09.479 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:33:09.479 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:33:09.479 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:33:09.479 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:33:09.979 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:33:09.980 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:33:09.980 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:33:09.980 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:33:09.980 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:33:09.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:33:09.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:33:09.980 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:33:09.980 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:33:10.002 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 03:10:38.78652   Targ dec = -68:32:52.6848
2026-01-22T00:33:10.002 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:33:10.002 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:33:10.002 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:33:10.009 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:33:10.009 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:33:10.009 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:33:10.009 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:33:11.062 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:33:13.065 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:33:13.065 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:33:13.065 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:33:13.483 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:33:13.483 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:33:13.483 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T00:33:13.483 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T00:33:13.483 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T00:33:13.483 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512290
2026-01-22T00:33:13.483 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T00:33:13.483 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T00:33:13.483 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T22:26:53', 'end': '2026-01-21T22:33:13', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '380.0', 'events': {}}} with config status ID 17512290
2026-01-22T00:33:13.600 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:33:13.600 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:19:09Z', 'guide_off', 'config_id 13536', 'config_status_id 17512290', 'update_OCS 17512290 ATTEMPTED', 'run_script setup_std_star_EG21_17233537_13490_13536.json', 'run_script std_star_EG21_17233537_13490_13536.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17512290 COMPLETED 13536 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:30:23Z', 'run_script arc_flat_lamp_off.json'] at time 00:33:13
2026-01-22T00:33:16.257 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:33:26.267 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:33:36.277 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:33:46.287 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:33:46.288 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:33:11.167138
2026-01-22T00:33:46.288 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:33:11.167138
2026-01-22T00:33:46.288 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:33:46.288 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:33:46.288 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:33:46.288 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:33:46&start_after=2026-01-20T22:33:46&end_after=2026-01-21T22:33:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:33:46.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.406 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.408 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:33:46.409 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:33:46.410 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:33:46.411 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:33:46.412 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.413 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.414 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.415 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.417 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:33:46.417 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:33:46.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:33:46.420 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:33:46.420 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 13 configurations
2026-01-22T00:33:46.420 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:33:46.420 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:30:23Z
2026-01-22T00:33:46.420 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -203.420323
2026-01-22T00:33:46.421 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:33:48.423 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:33:48.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:33:48.424 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:33:48.424317    Obs time: 2026-01-21 22:30:23
2026-01-22T00:33:48.424 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:56:34.575683
2026-01-22T00:33:48.424 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86194
2026-01-22T00:33:48.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:30:23Z', 'guide_off', 'config_id 13526', 'config_status_id 17512501', 'update_OCS 17512501 ATTEMPTED', 'run_script setup_AT2025xvcPhot_17233748_13480_13526.json', 'run_script AT2025xvcPhot_17233748_13480_13526.json', 'update_OCS 17512501 COMPLETED 13526 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:43:49Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:33:48.424 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T00:33:48.424 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T00:33:48.424 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:33:48.424 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T00:33:48.424 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T00:33:48.424 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:33:48.425 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:33:48.425 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:33:48.425 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:33:48.425 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:33:51.429 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:33:51.429 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:33:53.431 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:33:53.431 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:33:53.431 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T22:30:23Z
2026-01-22T00:33:53.431 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T22:30:23Z
2026-01-22T00:33:53.431 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:33:53.431 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:33:53.431 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:33:53.431 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:33:53.431 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:33:53.431 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:33:55.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:33:56.434 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:33:56.434 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:33:58.436 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:33:58.436 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:33:58.436 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13526
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13526
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17512501
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17512501
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512501 ATTEMPTED
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512501 ATTEMPTED
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 5.7018, 'targ_dec': -67.018517, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '05:42:06.46', 'targ_dec': '-67:01:06.66', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_AT2025xvcPhot_17233748_13480_13526.json'}
2026-01-22T00:33:58.437 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:33:58.437 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512501
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T00:33:58.437 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17512501
2026-01-22T00:33:58.516 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:33:58.938 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:33:58.938 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_AT2025xvcPhot_17233748_13480_13526.json 1 times
2026-01-22T00:33:58.938 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:33:58.940 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T00:33:58.940 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T00:33:58.940 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T00:34:01.969 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:34:02.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:04.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:05.024 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:05.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:34:06.045 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:07.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:08.089 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:09.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T00:34:10.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T00:34:10.131 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  5.70265185016366 is close enough to target ra = 5.7018
2026-01-22T00:34:10.131 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -67.0190361607074 is close enough to target dec = -67.018517
2026-01-22T00:34:10.131 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T00:34:10.131 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:34:10.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:34:10.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:34:10.131 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:34:10.131 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T00:34:10.131 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T00:34:10.143 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:34:10.143 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:34:10.198 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:34:11.199 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:34:11.199 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:34:11.214 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:34:12.215 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:34:12.266 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:34:13.268 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:34:13.268 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.7
2026-01-22T00:34:13.269 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:33:39
2026-01-22T00:34:13.269 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:33:39
2026-01-22T00:34:13.269 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:34:13.269 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09315039370078738
2026-01-22T00:34:13.271 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T00:34:13.271 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T00:34:13.271 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T00:34:13.280 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:34:13.280 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:34:13.319 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:34:14.321 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:34:14.321 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:34:14.448 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:34:15.449 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:34:15.452 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:34:15.500 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:34:16.502 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:34:16.503 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.7
2026-01-22T00:34:16.503 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:33:39
2026-01-22T00:34:16.503 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:33:39
2026-01-22T00:34:16.503 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:34:16.503 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09315039370078738
2026-01-22T00:34:21.538 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T00:34:21.538 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:34:21.538 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:34:21.538 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:34:21.538 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:34:21.539 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:34:21.540 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:34:21.540 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:34:21.542 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:34:21.653 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:34:21.653 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:34:21.655 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034861.655145
2026-01-22T00:34:25.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:34:26.916 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:34:26.917 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:34:26.933 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:34:27.048 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T00:34:31.051 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T00:34:31.051 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T00:34:35.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:34:41.102 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T00:34:41.102 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:34:41.102 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 05:42:06.46 = 307896.89999999997 arcseconds
2026-01-22T00:34:41.102 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -67:01:06.66 = -241266.66 arcseconds
2026-01-22T00:34:41.102 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-22T00:34:41.122 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:34:41.122 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.038
2026-01-22T00:34:41.122 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:34:41.122 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (05:42:07.582, -67:01:10.083).
2026-01-22T00:34:41.122 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  05 42 07.582  -67 01 10.083 .
2026-01-22T00:34:41.122 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 05 42 07.582  -67 01 10.083 .
2026-01-22T00:34:41.122 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 307913.73
2026-01-22T00:34:41.122 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -241270.083
2026-01-22T00:34:41.333 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:34:45.481 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:34:45.482 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:34:11.364899
2026-01-22T00:34:45.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:34:11.364899
2026-01-22T00:34:45.482 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:34:45.482 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:34:45.483 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:34:45.483 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:34:45&start_after=2026-01-20T22:34:45&end_after=2026-01-21T22:34:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:34:45.602 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:34:45.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:34:45.605 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:34:45.606 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:34:45.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:34:45.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:34:45.609 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:34:45.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:34:45.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:34:45.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:34:45.613 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:34:45.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:34:45.615 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:34:45.615 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:34:45.615 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:34:45.615 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:34:45.615 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 543.384284
2026-01-22T00:34:45.616 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:34:46.357 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T00:34:46.357 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:34:46.357 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:34:46.357 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:34:46.357 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:34:46.357 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:34:46.359 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:34:46.359 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:34:46.361 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:34:46.732 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:34:46.732 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:34:46.734 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034886.7343311
2026-01-22T00:34:47.618 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:34:47.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:34:47.638 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:34:47.638246    Obs time: 2026-01-21 22:43:49
2026-01-22T00:34:47.638 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:01.361754
2026-01-22T00:34:47.638 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  541
2026-01-22T00:34:47.638 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:34:47.859 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:34:50.993 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:34:50.993 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:34:51.012 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:34:51.867 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T00:34:54.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:34:55.871 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T00:35:04.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:35:05.923 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T00:35:05.923 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:35:05.923 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 05:42:06.46 = 307896.89999999997 arcseconds
2026-01-22T00:35:05.923 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -67:01:06.66 = -241266.66 arcseconds
2026-01-22T00:35:05.923 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-22T00:35:05.943 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:35:05.943 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.041
2026-01-22T00:35:05.943 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:35:05.943 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (05:42:06.516, -67:01:07.135).
2026-01-22T00:35:05.943 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  05 42 06.516  -67 01 07.135 .
2026-01-22T00:35:05.943 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 05 42 06.516  -67 01 07.135 .
2026-01-22T00:35:05.943 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 307897.74
2026-01-22T00:35:05.944 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -241267.135
2026-01-22T00:35:06.158 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:35:11.181 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T00:35:11.181 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:35:11.181 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:35:11.181 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:35:11.181 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:35:11.181 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:35:11.183 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:35:11.183 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:35:11.185 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:35:11.626 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:35:11.626 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:35:11.628 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034911.6281974
2026-01-22T00:35:12.683 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:35:14.666 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:35:15.886 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:35:15.886 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:35:15.888 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:35:16.689 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T00:35:22.712 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:35:22.712 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:35:22.712 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:35:22.712 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:35:22.712 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:35:22.714 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:35:22.714 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:35:22.716 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:35:22.826 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:35:22.826 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:35:22.828 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034922.8285573
2026-01-22T00:35:24.213 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:35:24.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:35:27.220 [DEBUG] [script_worker] [instrument.py] [stage_script()] Guiding not set
2026-01-22T00:35:27.220 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:35:27.220 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:35:27.220 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:35:27.220 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:35:27.220 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:35:27.220 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:35:27.220 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:35:28.093 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:35:28.093 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:35:28.113 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:35:28.279 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:35:30.281 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:35:30.281 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:35:30.281 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:35:30.608 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:35:30.608 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_AT2025xvcPhot_17233748_13480_13526.json was run successfully
2026-01-22T00:35:30.608 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:35:30.608 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:35:30.608 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:35:30.608 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script AT2025xvcPhot_17233748_13480_13526.json
2026-01-22T00:35:30.608 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'AT2025xvc', 'observer': 'moses.mlangeni', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 1, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '05:42:06.46', 'targ_dec': '-67:01:06.66', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'AT2025xvc', 'observer': 'moses.mlangeni', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '05:42:06.46', 'targ_dec': '-67:01:06.66', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'AT2025xvc', 'observer': 'moses.mlangeni', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '05:42:06.46', 'targ_dec': '-67:01:06.66', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'AT2025xvc', 'observer': 'moses.mlangeni', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '05:42:06.46', 'targ_dec': '-67:01:06.66', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'object': 'AT2025xvc', 'observer': 'moses.mlangeni', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '05:42:06.46', 'targ_dec': '-67:01:06.66', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'OFF'}, 'exposure_time': 60000, 'num_exposures': 1}}], 'script_name': 'AT2025xvcPhot_17233748_13480_13526.json'}
2026-01-22T00:35:30.608 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:35:30.608 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:35:31.109 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:35:31.109 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script AT2025xvcPhot_17233748_13480_13526.json 1 times
2026-01-22T00:35:31.109 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T00:35:31.109 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:35:31.109 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:35:31.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:35:31.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:35:31.109 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:35:31.110 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:35:31.110 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:35:31.110 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:35:31.121 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:35:31.122 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:35:31.122 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 1
2026-01-22T00:35:31.122 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:1
2026-01-22T00:35:31.122 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 1
2026-01-22T00:35:31.318 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 1
2026-01-22T00:35:32.338 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 2
2026-01-22T00:35:33.359 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 3
2026-01-22T00:35:34.380 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 1 : try 4
2026-01-22T00:35:34.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:35:35.434 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 1 successfully
2026-01-22T00:35:36.435 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:35:36.487 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-22T00:35:37.488 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:35:37.489 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.6
2026-01-22T00:35:37.489 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:34:43
2026-01-22T00:35:37.489 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:34:43
2026-01-22T00:35:37.489 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.19, 2879
2026-01-22T00:35:37.489 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.10149078740157479
2026-01-22T00:35:37.492 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 1
2026-01-22T00:35:37.492 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:35:37.492 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:35:37.492 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:35:37.502 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 1 successfully
2026-01-22T00:35:38.503 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:35:38.503 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:35:38.503 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:35:39.552 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:35:41.555 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='05:42:06.46', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-67:01:06.66', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='moses.mlangeni', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2025xvc', comment='The object name')]
2026-01-22T00:35:41.555 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:35:41.555 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:35:41.556 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:35:41.556 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:35:41.557 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:35:41.557 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:35:41.559 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:35:41.697 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:35:41.697 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:35:41.699 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769034941.6996396
2026-01-22T00:35:42.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:35:42.056 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:35:42.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:35:42.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:35:42.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:35:42.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:35:44.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:35:44.712 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:35:11.573837
2026-01-22T00:35:44.712 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:35:11.573837
2026-01-22T00:35:44.712 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:35:44.712 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:35:44.713 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:35:44.713 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:35:44&start_after=2026-01-20T22:35:44&end_after=2026-01-21T22:35:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:35:44.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:35:44.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:35:44.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:35:44.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:35:44.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:35:44.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:35:44.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:35:44.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:35:44.839 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:35:44.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:35:44.841 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:35:44.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:35:44.843 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:35:44.843 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:35:44.843 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:35:44.843 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:35:44.843 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 484.156245
2026-01-22T00:35:44.844 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:35:45.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:35:45.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:35:45.606 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:35:45.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:35:46.845 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:35:46.862 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:35:46.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:35:46.863015    Obs time: 2026-01-21 22:43:49
2026-01-22T00:35:46.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:02.136985
2026-01-22T00:35:46.863 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  482
2026-01-22T00:35:46.863 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:35:47.148 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-22T00:35:48.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:35:48.623 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:35:48.623 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:35:48.623 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:35:49.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.553/60.0
2026-01-22T00:35:51.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.521/60.0
2026-01-22T00:35:51.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:35:51.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:35:51.626 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:35:51.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:35:53.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.49/60.0
2026-01-22T00:35:53.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:35:54.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:35:54.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:35:54.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:35:54.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:35:55.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.461/60.0
2026-01-22T00:35:57.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.43/60.0
2026-01-22T00:35:57.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:35:57.649 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:35:57.650 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:35:57.650 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:35:59.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.399/60.0
2026-01-22T00:36:00.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:00.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:00.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:00.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:01.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.369/60.0
2026-01-22T00:36:03.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.338/60.0
2026-01-22T00:36:03.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:03.692 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:36:03.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:03.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:36:03.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:36:05.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.307/60.0
2026-01-22T00:36:06.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:06.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:36:06.711 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:06.711 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:07.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.277/60.0
2026-01-22T00:36:09.484 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.247/60.0
2026-01-22T00:36:09.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:09.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:09.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:09.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:11.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.216/60.0
2026-01-22T00:36:12.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:12.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:12.731 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:12.731 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:13.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.186/60.0
2026-01-22T00:36:13.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:36:15.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.155/60.0
2026-01-22T00:36:15.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:15.735 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:15.735 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:15.735 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:17.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.125/60.0
2026-01-22T00:36:18.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:18.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:18.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:18.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:19.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.096/60.0
2026-01-22T00:36:21.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.065/60.0
2026-01-22T00:36:21.754 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:21.776 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:21.776 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:21.776 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:23.697 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.033/60.0
2026-01-22T00:36:23.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:36:24.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:24.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:24.793 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:24.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:25.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.005/60.0
2026-01-22T00:36:27.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.973/60.0
2026-01-22T00:36:27.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:27.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:27.797 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:27.798 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:29.788 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.942/60.0
2026-01-22T00:36:30.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:30.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:36:30.821 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:30.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000331966
2026-01-22T00:36:31.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.912/60.0
2026-01-22T00:36:33.823 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:33.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000331966
2026-01-22T00:36:33.824 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:33.824 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:33.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.881/60.0
2026-01-22T00:36:33.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:36:35.879 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.851/60.0
2026-01-22T00:36:36.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:36.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:36.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:36.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:37.910 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.821/60.0
2026-01-22T00:36:39.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:39.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:39.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:39.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:39.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.79/60.0
2026-01-22T00:36:41.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:42.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:42.884 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:42.884 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:42.884 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:43.915 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:36:43.935 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:36:11.776506
2026-01-22T00:36:43.935 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:36:11.776506
2026-01-22T00:36:43.935 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:36:43.935 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:36:43.935 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:36:43.935 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:36:43&start_after=2026-01-20T22:36:43&end_after=2026-01-21T22:36:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:36:44.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:44.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:36:44.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:36:44.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:36:44.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:36:44.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:36:44.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:36:44.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:36:44.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:36:44.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:36:44.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:36:44.060 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:36:44.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:36:44.063 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:36:44.063 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:36:44.063 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:36:44.063 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:36:44.063 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 424.936782
2026-01-22T00:36:44.064 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:36:45.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:45.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:36:45.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:45.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:36:46.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:46.065 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:36:46.066 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:36:46.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:36:46.066204    Obs time: 2026-01-21 22:43:49
2026-01-22T00:36:46.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:02.933796
2026-01-22T00:36:46.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  422
2026-01-22T00:36:46.066 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:36:48.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:48.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:48.912 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:36:48.912 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:48.912 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:50.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:51.915 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:51.916 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:51.916 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:51.916 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:52.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:53.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:36:54.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:54.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:54.936 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:54.936 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:54.936 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:56.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:36:57.939 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:36:57.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:36:57.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:36:57.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:36:58.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:37:00.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:37:00.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:00.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:00.981 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:00.981 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:02.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:37:03.083 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:37:03.983 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:03.984 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:03.984 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:03.984 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:04.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:37:05.232 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:37:05.232 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:37:05.249 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:37:06.987 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:37:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T00:37:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T00:37:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:37:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:37:06.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:37:06.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:37:06.987 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:37:06.988 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:37:06.988 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:37:06.988 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:37:06.998 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:37:06.999 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:37:07.000 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T00:37:07.000 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T00:37:07.000 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T00:37:07.067 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T00:37:08.087 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T00:37:09.108 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T00:37:10.129 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T00:37:11.198 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T00:37:12.199 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:37:12.214 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:37:13.093 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:37:13.215 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:37:13.216 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.05
2026-01-22T00:37:13.216 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:36:20
2026-01-22T00:37:13.216 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:36:20
2026-01-22T00:37:13.216 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T00:37:13.217 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09089094488188974
2026-01-22T00:37:13.219 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T00:37:13.219 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:37:13.220 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:37:13.220 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:37:13.266 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:37:14.267 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:37:14.268 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:37:14.268 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:37:15.322 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:37:17.342 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='05:42:06.46', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-67:01:06.66', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='moses.mlangeni', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2025xvc', comment='The object name')]
2026-01-22T00:37:17.342 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:37:17.342 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:37:17.342 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:37:17.342 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:37:17.344 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:37:17.344 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:37:17.346 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:37:17.467 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:37:17.467 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:37:17.469 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035037.4695036
2026-01-22T00:37:17.843 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:37:17.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:37:18.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:18.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: -0.0009999999999763531
2026-01-22T00:37:18.362 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:18.362 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:37:21.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:21.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:37:21.385 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:21.385 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:22.918 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-22T00:37:23.100 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:37:24.388 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:24.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:24.389 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:24.389 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:24.986 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-22T00:37:27.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.484/60.0
2026-01-22T00:37:27.392 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:27.408 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:37:27.408 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:27.408 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:37:29.160 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.378/60.0
2026-01-22T00:37:30.411 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:30.412 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:37:30.412 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:30.412 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:31.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.31/60.0
2026-01-22T00:37:33.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:37:33.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.242/60.0
2026-01-22T00:37:33.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:33.431 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:33.431 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:33.431 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:35.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.174/60.0
2026-01-22T00:37:36.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:36.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:36.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:36.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:37.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.106/60.0
2026-01-22T00:37:39.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:39.470 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:39.470 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:39.470 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:39.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.038/60.0
2026-01-22T00:37:41.568 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.97/60.0
2026-01-22T00:37:42.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:42.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:42.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:42.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:43.120 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:37:43.141 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:37:11.975431
2026-01-22T00:37:43.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:37:11.975431
2026-01-22T00:37:43.141 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:37:43.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:37:43.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:37:43.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:37:43&start_after=2026-01-20T22:37:43&end_after=2026-01-21T22:37:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:37:43.257 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:37:43.259 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:37:43.260 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:37:43.261 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:37:43.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:37:43.263 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:37:43.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:37:43.266 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:37:43.266 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T00:37:43.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:37:43.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T00:37:43.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 72422.733528
2026-01-22T00:37:43.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T00:37:43.636 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.902/60.0
2026-01-22T00:37:45.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:45.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:45.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:45.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:45.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.834/60.0
2026-01-22T00:37:47.772 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.766/60.0
2026-01-22T00:37:48.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:48.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:48.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:48.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:49.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.698/60.0
2026-01-22T00:37:51.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:51.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:51.553 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:51.553 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:51.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.63/60.0
2026-01-22T00:37:52.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:37:53.976 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.562/60.0
2026-01-22T00:37:54.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:54.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:54.558 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:54.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:56.044 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.494/60.0
2026-01-22T00:37:57.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:37:57.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:37:57.580 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:37:57.580 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:37:58.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.426/60.0
2026-01-22T00:38:00.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.358/60.0
2026-01-22T00:38:00.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:00.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:00.583 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:00.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:02.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.29/60.0
2026-01-22T00:38:02.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:38:03.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:03.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:03.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:03.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:04.316 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.222/60.0
2026-01-22T00:38:06.384 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.154/60.0
2026-01-22T00:38:06.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:06.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:06.609 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:06.609 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:08.452 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.085/60.0
2026-01-22T00:38:09.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:09.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:09.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:09.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:10.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.017/60.0
2026-01-22T00:38:12.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:38:12.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.949/60.0
2026-01-22T00:38:12.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:12.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:12.656 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:12.656 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:14.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.882/60.0
2026-01-22T00:38:15.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:15.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:15.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:15.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:16.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.814/60.0
2026-01-22T00:38:18.683 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:18.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:18.684 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:18.684 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:18.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:20.860 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:21.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:21.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:21.703 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:21.703 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:22.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:38:22.928 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:24.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:24.707 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:24.707 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:24.707 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:24.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:27.064 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:27.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:27.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:27.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:27.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:29.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:30.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:30.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:30.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:30.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:31.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:32.310 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:38:33.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:33.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:33.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:38:33.756 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:33.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000331966
2026-01-22T00:38:35.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:36.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:36.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000331966
2026-01-22T00:38:36.761 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:36.761 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:37.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:39.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:38:39.764 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:39.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:39.782 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:39.782 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:39.889 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:38:39.889 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:38:39.891 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:38:42.320 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:38:42.338 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:38:12.176579
2026-01-22T00:38:42.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:38:12.176579
2026-01-22T00:38:42.338 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:38:42.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:38:42.339 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:38:42.339 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:38:42&start_after=2026-01-20T22:38:42&end_after=2026-01-21T22:38:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:38:42.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:38:42.462 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:38:42.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:38:42.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:38:42.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:38:42.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:38:42.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:38:42.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:38:42.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:38:42.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:38:42.472 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:38:42.474 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:38:42.475 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:38:42.475 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:38:42.475 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:38:42.475 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:38:42.475 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 306.524713
2026-01-22T00:38:42.476 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:38:42.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:38:42.785 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T00:38:42.785 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T00:38:42.785 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:38:42.785 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:38:42.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:38:42.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:38:42.785 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:38:42.785 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:38:42.785 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:38:42.785 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:38:42.794 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:38:42.795 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:38:42.795 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T00:38:42.795 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T00:38:42.796 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T00:38:42.869 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T00:38:43.889 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T00:38:44.477 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:38:44.478 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:38:44.478 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:38:44.478479    Obs time: 2026-01-21 22:43:49
2026-01-22T00:38:44.478 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:04.521521
2026-01-22T00:38:44.478 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  304
2026-01-22T00:38:44.478 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:38:44.910 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T00:38:45.952 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T00:38:46.953 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:38:46.968 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:38:47.969 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:38:47.970 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.05
2026-01-22T00:38:48.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:36:20
2026-01-22T00:38:48.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:36:20
2026-01-22T00:38:48.017 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T00:38:48.017 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09096594488188973
2026-01-22T00:38:48.020 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T00:38:48.020 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:38:48.020 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:38:48.020 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:38:48.058 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:38:49.059 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:38:49.059 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:38:49.059 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:38:50.114 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:38:51.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:38:52.133 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='05:42:06.46', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-67:01:06.66', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='moses.mlangeni', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2025xvc', comment='The object name')]
2026-01-22T00:38:52.133 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:38:52.133 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:38:52.133 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:38:52.133 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:38:52.135 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:38:52.135 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:38:52.137 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:38:52.259 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:38:52.259 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:38:52.260 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035132.260752
2026-01-22T00:38:52.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:38:52.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:38:53.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:53.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000331966. Last known sky angle: 0.0009999999999763531
2026-01-22T00:38:53.155 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:53.155 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000331966
2026-01-22T00:38:56.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:56.175 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000331966
2026-01-22T00:38:56.175 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:56.175 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:57.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-22T00:38:59.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:38:59.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:38:59.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:38:59.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:38:59.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.553/60.0
2026-01-22T00:39:01.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:39:01.846 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.483/60.0
2026-01-22T00:39:02.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:02.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000331966. Last known sky angle: 0.0
2026-01-22T00:39:02.198 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:02.198 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000331966
2026-01-22T00:39:03.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.417/60.0
2026-01-22T00:39:05.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:05.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000331966
2026-01-22T00:39:05.220 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:05.220 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:05.982 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.348/60.0
2026-01-22T00:39:08.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.28/60.0
2026-01-22T00:39:08.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:08.240 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:08.240 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:08.240 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:10.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.21/60.0
2026-01-22T00:39:11.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:11.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:11.242 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:11.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:11.505 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:39:12.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.143/60.0
2026-01-22T00:39:14.246 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:14.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.075/60.0
2026-01-22T00:39:14.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:14.265 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:14.265 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:16.322 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.007/60.0
2026-01-22T00:39:17.268 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:17.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:17.269 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:17.269 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:18.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.939/60.0
2026-01-22T00:39:20.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:20.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:20.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:20.290 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:20.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.871/60.0
2026-01-22T00:39:21.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:39:22.526 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.804/60.0
2026-01-22T00:39:23.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:23.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:23.316 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:23.317 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:24.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.735/60.0
2026-01-22T00:39:26.320 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:26.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:26.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:26.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:26.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.668/60.0
2026-01-22T00:39:28.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.6/60.0
2026-01-22T00:39:29.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:29.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:29.342 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:29.342 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:30.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.531/60.0
2026-01-22T00:39:31.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:39:32.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:32.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:32.361 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:32.361 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:32.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.463/60.0
2026-01-22T00:39:34.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.394/60.0
2026-01-22T00:39:35.364 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:35.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:35.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:35.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:37.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.326/60.0
2026-01-22T00:39:38.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:38.384 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:38.384 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:38.384 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:39.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.26/60.0
2026-01-22T00:39:41.138 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.19/60.0
2026-01-22T00:39:41.386 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:41.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:41.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:41.407 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:41.535 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:39:41.535 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:39:12.380801
2026-01-22T00:39:41.536 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:39:12.380801
2026-01-22T00:39:41.536 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:39:41.536 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:39:41.536 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:39:41.536 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:39:41&start_after=2026-01-20T22:39:41&end_after=2026-01-21T22:39:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:39:41.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:39:41.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:39:41.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:39:41.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:39:41.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:39:41.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:39:41.657 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:39:41.657 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:39:41.659 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:39:41.660 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:39:41.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:39:41.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:39:41.663 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:39:41.663 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:39:41.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:39:41.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:39:41.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 247.336148
2026-01-22T00:39:41.664 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:39:43.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.122/60.0
2026-01-22T00:39:43.667 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:39:43.686 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:39:43.686 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:39:43.686100    Obs time: 2026-01-21 22:43:49
2026-01-22T00:39:43.686 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:05.313900
2026-01-22T00:39:43.686 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  245
2026-01-22T00:39:43.686 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:39:44.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:44.411 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:44.411 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:44.411 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:45.274 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.054/60.0
2026-01-22T00:39:47.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.986/60.0
2026-01-22T00:39:47.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:47.415 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:47.415 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:47.415 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:49.412 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.919/60.0
2026-01-22T00:39:50.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:50.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:50.441 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:50.442 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:50.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:39:51.480 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.848/60.0
2026-01-22T00:39:53.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:53.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:53.447 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:53.448 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:53.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:39:55.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:39:56.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:56.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:39:56.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:56.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:39:57.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:39:59.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:39:59.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:39:59.502 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:39:59.502 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:39:59.752 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:00.703 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:40:01.820 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:02.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:02.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:40:02.526 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:02.526 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:03.888 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:05.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:05.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:40:05.532 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:05.533 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:40:05.956 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:08.024 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:08.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:08.559 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:40:08.559 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:08.559 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:10.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:10.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:40:11.563 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:11.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:11.565 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:11.565 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:12.160 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:14.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:40:14.568 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:14.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:40:14.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:14.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:40:14.750 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:40:14.750 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:40:14.756 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:40:17.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:40:17.594 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T00:40:17.594 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T00:40:17.594 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:40:17.594 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:40:17.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:40:17.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:40:17.594 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:40:17.595 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:40:17.595 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:40:17.595 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:40:17.611 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:40:17.614 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:40:17.614 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T00:40:17.615 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T00:40:17.615 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T00:40:17.661 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T00:40:18.681 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T00:40:19.702 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T00:40:20.722 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T00:40:20.725 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:40:21.770 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T00:40:22.771 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:40:22.823 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T00:40:23.825 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:40:23.827 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.06
2026-01-22T00:40:23.828 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:40:05
2026-01-22T00:40:23.828 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:40:05
2026-01-22T00:40:23.828 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T00:40:23.828 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09328039370078739
2026-01-22T00:40:23.833 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T00:40:23.833 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:40:23.833 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:40:23.833 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:40:23.876 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T00:40:24.878 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:40:24.878 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:40:24.878 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:40:25.921 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:40:27.941 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='05:42:06.46', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-67:01:06.66', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='moses.mlangeni', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2025xvc', comment='The object name')]
2026-01-22T00:40:27.942 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:40:27.942 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:40:27.942 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:40:27.942 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:40:27.946 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:40:27.946 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:40:27.953 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:40:28.066 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:40:28.066 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:40:28.067 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035228.067957
2026-01-22T00:40:28.443 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:40:28.444 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:40:28.944 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:28.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:28.966 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:28.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:30.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:40:31.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:31.990 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:31.991 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:31.991 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:33.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.589/60.0
2026-01-22T00:40:34.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:34.995 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:34.995 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:34.996 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:35.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.548/60.0
2026-01-22T00:40:37.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.48/60.0
2026-01-22T00:40:37.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:38.015 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:38.016 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:38.016 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:39.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.45/60.0
2026-01-22T00:40:40.746 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:40:40.764 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:40:12.579823
2026-01-22T00:40:40.764 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:40:12.579823
2026-01-22T00:40:40.764 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:40:40.764 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:40:40.765 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:40:40.766 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:40:40&start_after=2026-01-20T22:40:40&end_after=2026-01-21T22:40:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:40:40.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:40:40.921 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:40:40.928 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:40:40.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:40:40.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:40:40.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:40:40.942 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:40:40.944 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:40:40.947 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:40:40.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:40:40.950 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:40:40.953 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:40:40.954 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:40:40.954 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:40:40.954 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:40:40.954 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:40:40.954 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 188.045247
2026-01-22T00:40:40.956 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:40:41.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:41.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:41.019 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:41.019 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:41.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.419/60.0
2026-01-22T00:40:42.958 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:40:42.960 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:40:42.960 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:40:42.960696    Obs time: 2026-01-21 22:43:49
2026-01-22T00:40:42.960 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:06.039304
2026-01-22T00:40:42.961 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  186
2026-01-22T00:40:42.961 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:40:43.708 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.389/60.0
2026-01-22T00:40:44.022 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:44.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:44.043 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:44.043 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:45.738 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.361/60.0
2026-01-22T00:40:47.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:47.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:47.049 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:47.049 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:47.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.328/60.0
2026-01-22T00:40:49.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.299/60.0
2026-01-22T00:40:49.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:40:50.052 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:50.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:50.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:50.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:51.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.27/60.0
2026-01-22T00:40:53.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:53.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:53.091 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:53.091 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:53.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.241/60.0
2026-01-22T00:40:55.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.209/60.0
2026-01-22T00:40:56.093 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:56.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:56.110 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:56.110 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:57.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.178/60.0
2026-01-22T00:40:59.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:40:59.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:40:59.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:40:59.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:40:59.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.149/60.0
2026-01-22T00:40:59.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:41:01.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.118/60.0
2026-01-22T00:41:02.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:02.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:02.133 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:02.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:04.011 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.087/60.0
2026-01-22T00:41:05.136 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:05.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:05.137 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:05.137 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:06.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.057/60.0
2026-01-22T00:41:08.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.028/60.0
2026-01-22T00:41:08.140 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:08.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:08.161 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:08.161 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:09.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:41:10.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.996/60.0
2026-01-22T00:41:11.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:11.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:11.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:11.181 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:12.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.966/60.0
2026-01-22T00:41:14.163 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.935/60.0
2026-01-22T00:41:14.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:14.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:14.201 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:14.201 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:16.193 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.905/60.0
2026-01-22T00:41:17.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:17.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:17.205 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:17.205 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:18.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.874/60.0
2026-01-22T00:41:19.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:41:20.208 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:20.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:20.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:20.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:20.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.844/60.0
2026-01-22T00:41:22.284 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.813/60.0
2026-01-22T00:41:23.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:23.243 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:23.243 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:23.243 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:24.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.783/60.0
2026-01-22T00:41:26.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:26.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:26.267 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:26.267 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:26.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.752/60.0
2026-01-22T00:41:28.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:29.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:29.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:29.285 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:29.285 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:30.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:41:30.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:32.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:32.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:32.309 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:32.309 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:32.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:34.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:35.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:35.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:35.313 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:35.313 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:36.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:38.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:38.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:38.337 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:38.337 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:38.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:40.012 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:41:40.032 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:41:12.778149
2026-01-22T00:41:40.032 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:41:12.778149
2026-01-22T00:41:40.032 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:41:40.032 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:41:40.033 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:41:40.033 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:41:40&start_after=2026-01-20T22:41:40&end_after=2026-01-21T22:41:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:41:40.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:41:40.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:41:40.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:41:40.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:41:40.152 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:41:40.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:41:40.154 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:41:40.155 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:41:40.156 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:41:40.158 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:41:40.159 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:41:40.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:41:40.161 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:41:40.161 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:41:40.161 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:41:40.161 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:41:40.161 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 128.838368
2026-01-22T00:41:40.162 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:41:40.559 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:41.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:41.339 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:41.339 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:41.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:42.164 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:41:42.165 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:41:42.165 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:41:42.165449    Obs time: 2026-01-21 22:43:49
2026-01-22T00:41:42.165 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:06.834551
2026-01-22T00:41:42.165 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  126
2026-01-22T00:41:42.165 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:41:42.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:44.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:44.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:44.356 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:44.356 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:44.620 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:46.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:47.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:47.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:47.375 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:47.375 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:48.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:41:49.172 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:41:50.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:41:50.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:41:50.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:41:50.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:41:50.561 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:41:50.561 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:41:50.562 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:41:53.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:41:53.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T00:41:53.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T00:41:53.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:41:53.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:41:53.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:41:53.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:41:53.397 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:41:53.397 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:41:53.397 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:41:53.397 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:41:53.407 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:41:53.408 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:41:53.408 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-22T00:41:53.408 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-22T00:41:53.408 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-22T00:41:53.479 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-22T00:41:54.499 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-22T00:41:55.520 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-22T00:41:56.540 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-22T00:41:57.587 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-22T00:41:58.588 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:41:58.640 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T00:41:59.182 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:41:59.641 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:41:59.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 18.76
2026-01-22T00:41:59.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:41:41
2026-01-22T00:41:59.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:41:41
2026-01-22T00:41:59.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-22T00:41:59.643 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09382047244094487
2026-01-22T00:41:59.645 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-22T00:41:59.645 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:41:59.645 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:41:59.645 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:41:59.692 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T00:42:00.694 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:42:00.694 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:42:00.694 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:42:01.728 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:42:03.729 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='05:42:06.46', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-67:01:06.66', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='moses.mlangeni', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='AT2025xvc', comment='The object name')]
2026-01-22T00:42:03.729 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:42:03.729 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:42:03.730 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:42:03.730 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:42:03.732 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:42:03.732 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:42:03.734 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:42:03.836 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:42:03.836 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:42:03.838 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035323.8381383
2026-01-22T00:42:04.230 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:42:04.230 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:42:04.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:04.748 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:04.748 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:04.748 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:07.751 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:07.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:07.752 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:07.752 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:09.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:42:09.287 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-22T00:42:10.755 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:10.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:10.773 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:10.773 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:11.317 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-22T00:42:13.348 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.522/60.0
2026-01-22T00:42:13.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:13.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:13.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:13.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:15.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.49/60.0
2026-01-22T00:42:16.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:16.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:16.798 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:16.798 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:17.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.46/60.0
2026-01-22T00:42:19.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:42:19.439 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.43/60.0
2026-01-22T00:42:19.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:19.802 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:19.802 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:19.802 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:21.470 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.399/60.0
2026-01-22T00:42:22.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:22.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:22.822 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:22.822 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:23.500 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.368/60.0
2026-01-22T00:42:25.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.338/60.0
2026-01-22T00:42:25.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:25.826 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:25.826 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:25.826 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:27.561 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.307/60.0
2026-01-22T00:42:28.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:28.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:28.845 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:28.845 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:29.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:42:29.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.278/60.0
2026-01-22T00:42:31.622 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.247/60.0
2026-01-22T00:42:31.848 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:31.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:31.849 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:31.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:33.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.217/60.0
2026-01-22T00:42:34.852 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:34.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:34.871 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:34.871 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:35.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.185/60.0
2026-01-22T00:42:37.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.155/60.0
2026-01-22T00:42:37.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:37.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:37.874 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:37.874 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:39.222 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:42:39.243 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:42:12.979803
2026-01-22T00:42:39.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:42:12.979803
2026-01-22T00:42:39.243 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:42:39.243 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:42:39.243 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:42:39.243 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:42:39&start_after=2026-01-20T22:42:39&end_after=2026-01-21T22:42:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:42:39.379 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:42:39.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:42:39.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:42:39.383 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:42:39.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:42:39.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:42:39.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:42:39.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:42:39.388 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:42:39.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:42:39.391 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:42:39.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:42:39.393 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:42:39.393 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:42:39.393 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:42:39.393 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:42:39.393 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 69.606359
2026-01-22T00:42:39.394 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:42:39.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.124/60.0
2026-01-22T00:42:40.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:40.899 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:40.899 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:40.899 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:41.396 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:42:41.397 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:42:41.397 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:42:41.397511    Obs time: 2026-01-21 22:43:49
2026-01-22T00:42:41.397 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:07.602489
2026-01-22T00:42:41.397 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  67
2026-01-22T00:42:41.397 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:42:41.775 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.095/60.0
2026-01-22T00:42:43.805 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.063/60.0
2026-01-22T00:42:43.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:43.903 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:42:43.903 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:43.903 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:42:45.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.032/60.0
2026-01-22T00:42:46.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:46.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:42:46.925 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:46.925 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:47.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.003/60.0
2026-01-22T00:42:48.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:42:49.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.971/60.0
2026-01-22T00:42:49.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:49.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:49.929 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:49.929 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:51.928 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.941/60.0
2026-01-22T00:42:52.932 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:52.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:52.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:52.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:53.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.91/60.0
2026-01-22T00:42:55.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:55.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:55.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:55.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:42:55.989 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.879/60.0
2026-01-22T00:42:58.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.849/60.0
2026-01-22T00:42:58.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:42:58.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:42:58.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:42:58.972 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:42:58.972 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:00.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.819/60.0
2026-01-22T00:43:01.975 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:01.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:01.976 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:01.976 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:02.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.787/60.0
2026-01-22T00:43:04.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:04.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:04.999 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:04.999 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:04.999 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:06.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:08.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:08.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:08.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:08.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:08.173 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:08.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:43:10.203 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:11.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:11.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:11.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:11.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:12.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:14.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:14.027 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:14.027 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:14.027 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:14.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:16.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:17.030 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:17.052 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:17.052 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:17.052 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:18.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:18.434 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:43:20.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:20.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:20.057 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:20.057 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:20.394 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:22.425 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:23.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:23.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:43:23.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:23.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:43:24.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: AT2025xvcPhot_17233748_13480_13526.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T00:43:26.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:43:26.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:43:26.081 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:43:26.081 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:43:26.318 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:43:26.318 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:43:26.320 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:43:28.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:43:29.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:43:29.084 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T00:43:29.084 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:43:29.084 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:43:30.050 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:43:30.050 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script AT2025xvcPhot_17233748_13480_13526.json was run successfully
2026-01-22T00:43:30.050 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512501 COMPLETED 13526 reason
2026-01-22T00:43:30.050 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512501 COMPLETED 13526 reason
2026-01-22T00:43:30.050 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:43:30.050 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:43:30.050 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:43:30.050 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:43:30.050 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:43:30.050 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:43:33.053 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:43:33.053 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:43:35.055 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:43:35.055 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:43:35.055 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T00:43:35.055 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T00:43:35.055 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T00:43:35.057 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T00:43:35.057 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T22:43:49Z
2026-01-22T00:43:35.057 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T00:43:35.057 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T00:43:35.058 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T00:43:35.058 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T00:43:35.058 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T00:43:35.058 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:43:35.058 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:43:35.558 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:43:35.558 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T00:43:35.558 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:43:35.558 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:43:35.558 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:43:35.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:43:35.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:43:35.558 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:43:35.559 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T00:43:35.560 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 05:42:09.65664   Targ dec = -67:00:26.9352
2026-01-22T00:43:35.560 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:43:35.560 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:43:35.561 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:43:35.567 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:43:35.567 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:43:35.567 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:43:35.567 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:43:36.600 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:43:38.453 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:43:38.454 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:43:13.180902
2026-01-22T00:43:38.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:43:13.180902
2026-01-22T00:43:38.454 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:43:38.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:43:38.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:43:38.455 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:43:38&start_after=2026-01-20T22:43:38&end_after=2026-01-21T22:43:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:43:38.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:43:38.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:43:38.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:43:38.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:43:38.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:43:38.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:43:38.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:43:38.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:43:38.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:43:38.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:43:38.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:43:38.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:43:38.584 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:43:38.584 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:43:38.584 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:43:38.584 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:43:38.584 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 10.415412
2026-01-22T00:43:38.585 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:43:38.602 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:43:38.602 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:43:38.603 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:43:39.061 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:43:39.061 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T00:43:39.061 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T00:43:39.061 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T00:43:39.061 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T00:43:39.061 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512501
2026-01-22T00:43:39.061 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T00:43:39.061 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T00:43:39.061 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T22:33:48', 'end': '2026-01-21T22:43:39', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '591.0', 'events': {}}} with config status ID 17512501
2026-01-22T00:43:39.222 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:43:39.222 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:30:23Z', 'guide_off', 'config_id 13526', 'config_status_id 17512501', 'update_OCS 17512501 ATTEMPTED', 'run_script setup_AT2025xvcPhot_17233748_13480_13526.json', 'run_script AT2025xvcPhot_17233748_13480_13526.json', 'update_OCS 17512501 COMPLETED 13526 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T22:43:49Z', 'run_script arc_flat_lamp_off.json'] at time 00:43:39
2026-01-22T00:43:40.587 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:43:40.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:43:40.588 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:43:40.588311    Obs time: 2026-01-21 22:43:49
2026-01-22T00:43:40.588 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:08.411689
2026-01-22T00:43:40.588 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  8
2026-01-22T00:43:40.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:43:47.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:43:57.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:44:07.609 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:44:17.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:44:27.630 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:44:37.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:44:37.662 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:44:13.381706
2026-01-22T00:44:37.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:44:13.381706
2026-01-22T00:44:37.662 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:44:37.662 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:44:37.662 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:44:37.662 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:44:37&start_after=2026-01-20T22:44:37&end_after=2026-01-21T22:44:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:44:37.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:44:37.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:44:37.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:44:37.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:44:37.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:44:37.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:44:37.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:44:37.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:44:37.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:44:37.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:44:37.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:44:37.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:44:37.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:44:37.789 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 12 configurations
2026-01-22T00:44:37.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:44:37.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T22:43:49Z
2026-01-22T00:44:37.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -48.789682
2026-01-22T00:44:37.790 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:44:39.792 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:44:39.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:44:39.807 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:44:39.807386    Obs time: 2026-01-21 22:43:49
2026-01-22T00:44:39.807 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:09.192614
2026-01-22T00:44:39.807 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86349
2026-01-22T00:44:39.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:43:49Z', 'guide_off', 'config_id 13546', 'config_status_id 17512738', 'update_OCS 17512738 ATTEMPTED', 'run_script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json', 'run_script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 3', 'update_OCS 17512738 COMPLETED 13546 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:02:14Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T00:44:39.807 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T00:44:39.807 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T00:44:39.807 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T00:44:39.807 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T00:44:39.807 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T00:44:39.807 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T00:44:39.808 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T00:44:39.808 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T00:44:39.808 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T00:44:39.808 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T00:44:39.808 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:44:39.808 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:44:39.808 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:44:39.808 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:44:39.808 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:44:39.809 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:44:42.812 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:44:42.812 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:44:44.814 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:44:44.814 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:44:44.814 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T22:43:49Z
2026-01-22T00:44:44.814 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T22:43:49Z
2026-01-22T00:44:44.814 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T00:44:44.814 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T00:44:44.814 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T00:44:44.814 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T00:44:44.814 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:44:44.814 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:44:46.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:44:47.817 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T00:44:47.817 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T00:44:49.819 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T00:44:49.819 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13546
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13546
2026-01-22T00:44:49.819 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17512738
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17512738
2026-01-22T00:44:49.819 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512738 ATTEMPTED
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512738 ATTEMPTED
2026-01-22T00:44:49.819 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json
2026-01-22T00:44:49.819 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json
2026-01-22T00:44:49.819 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': -99.9, 'targ_dec': -99.9, 'orbinc': 12.85735, 'longascnode': 126.57795, 'argofperih': 189.03503, 'eccentricity': 0.5201762, 'meandist': 0.6833395, 'meananom': 139.95806, 'epochofel': 61060.0, 'scheme': 'MPC_MINOR_PLANET', 'type': 'ORBITAL_ELEMENTS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json'}
2026-01-22T00:44:49.819 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:44:49.820 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:44:49.820 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T00:44:49.820 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512738
2026-01-22T00:44:49.820 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T00:44:49.820 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T00:44:49.820 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17512738
2026-01-22T00:44:49.894 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T00:44:50.320 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:44:50.320 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 1 times
2026-01-22T00:44:50.320 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T00:44:50.321 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T00:44:50.321 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ORBITAL_ELEMENTS
2026-01-22T00:44:50.322 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object, will get ra and dec for time: 2461062.4540546476
2026-01-22T00:44:50.322 [DEBUG] [script_worker] [script_runner.py] [get_ra_dec_from_oorb()] Epoch = 61060.0
2026-01-22T00:44:50.322 [DEBUG] [script_worker] [script_runner.py] [get_ra_dec_from_oorb()] Epoch = 61060.0
2026-01-22T00:44:50.324 [INFO] [script_worker] [script_runner.py] [get_ra_dec_from_oorb()] JD to calculate RA and DEC: 2461062.4540546476
2026-01-22T00:44:50.340 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] RA and Dec at time = 2461062.4540546476 is RA = 127.8677006856027 and Dec = -20.772803685904243
2026-01-22T00:44:50.340 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T00:44:53.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:44:54.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:44:55.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:44:56.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:44:56.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:44:57.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:44:58.466 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:44:59.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:00.510 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:01.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:02.546 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:03.570 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:04.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:05.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:06.622 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:06.836 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:45:07.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:08.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:09.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:10.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:11.723 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:12.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:13.770 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:14.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:15.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:16.829 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:16.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:45:17.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:18.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:19.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:20.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:21.933 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:22.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:23.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:24.988 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:26.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:26.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:45:27.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:28.049 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:29.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:30.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:31.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:32.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:33.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:34.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:35.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:36.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:36.867 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:45:36.868 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:45:13.593869
2026-01-22T00:45:36.868 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:45:13.593869
2026-01-22T00:45:36.868 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:45:36.868 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:45:36.868 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:45:36.868 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:45:36&start_after=2026-01-20T22:45:36&end_after=2026-01-21T22:45:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:45:36.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:45:36.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:45:36.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:45:36.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:45:36.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:45:36.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:45:36.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:45:37.000 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:45:37.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:45:37.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:45:37.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:05:00Z
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1162.994332
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:45:37.005701    Obs time: 2026-01-21 23:05:00
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:22.994299
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1162
2026-01-22T00:45:37.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:45:37.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:38.241 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:39.260 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:40.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:41.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:42.321 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:43.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:44.360 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T00:45:45.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T00:45:45.379 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  8.5249611914125 is close enough to target ra = 8.52451
2026-01-22T00:45:45.379 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -20.7719500149668 is close enough to target dec = -20.772803685904243
2026-01-22T00:45:45.379 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T00:45:45.379 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:45:45.379 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:45:45.379 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T00:45:45.379 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:45:45.379 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T00:45:45.379 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T00:45:45.390 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:45:45.390 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:45:45.573 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T00:45:46.015 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:45:46.593 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T00:45:47.613 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T00:45:48.633 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T00:45:49.653 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T00:45:50.674 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T00:45:51.695 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-22T00:45:52.756 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:45:53.757 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:45:53.757 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:45:53.809 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:45:54.810 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:45:54.862 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:45:55.863 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:45:55.865 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.15
2026-01-22T00:45:55.865 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:45:26
2026-01-22T00:45:55.865 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:45:26
2026-01-22T00:45:55.865 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:45:55.865 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09287755905511809
2026-01-22T00:45:55.867 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T00:45:55.867 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T00:45:55.867 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T00:45:55.875 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:45:55.875 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:45:55.915 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:45:56.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:45:56.916 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:45:56.916 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:45:56.930 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:45:57.931 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:45:57.983 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:45:58.984 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:45:58.985 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.15
2026-01-22T00:45:58.985 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:45:26
2026-01-22T00:45:58.985 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:45:26
2026-01-22T00:45:58.985 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:45:58.986 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09287755905511809
2026-01-22T00:46:04.036 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T00:46:04.036 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:46:04.036 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:46:04.036 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:46:04.036 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:46:04.036 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:46:04.038 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:46:04.038 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:04.057 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:04.263 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:46:04.263 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:46:04.265 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035564.2655897
2026-01-22T00:46:06.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:46:10.527 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:46:10.527 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:10.547 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:10.548 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T00:46:14.552 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T00:46:14.552 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T00:46:14.573 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T00:46:14.573 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:46:14.573 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:31:28.25 = 460323.75 arcseconds
2026-01-22T00:46:14.573 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -20:46:22.09 = -74782.09 arcseconds
2026-01-22T00:46:14.574 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-22T00:46:14.594 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:46:14.594 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.327
2026-01-22T00:46:14.594 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:46:14.594 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:31:29.293, -20:46:09.693).
2026-01-22T00:46:14.594 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 31 29.293  -20 46 09.693 .
2026-01-22T00:46:14.594 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 31 29.293  -20 46 09.693 .
2026-01-22T00:46:14.594 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 460339.395
2026-01-22T00:46:14.594 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -74769.693
2026-01-22T00:46:14.805 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:46:16.043 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:46:19.830 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T00:46:19.830 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:46:19.831 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:46:19.831 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:46:19.831 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:46:19.831 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:46:19.833 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:46:19.833 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:19.834 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:20.056 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:46:20.056 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:46:20.058 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035580.0582702
2026-01-22T00:46:21.333 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:46:24.318 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:46:24.318 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:24.338 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T00:46:24.343 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:26.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:46:28.343 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T00:46:36.062 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:46:36.080 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:46:13.790966
2026-01-22T00:46:36.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:46:13.790966
2026-01-22T00:46:36.080 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:46:36.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:46:36.081 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:46:36.081 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:46:36&start_after=2026-01-20T22:46:36&end_after=2026-01-21T22:46:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:46:36.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:46:36.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:46:36.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:46:36.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:46:36.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:46:36.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:46:36.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:46:36.209 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:46:36.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:46:36.211 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:46:36.213 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:46:36.213 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:05:00Z
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1103.785884
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:46:36.214149    Obs time: 2026-01-21 23:05:00
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:23.785851
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1103
2026-01-22T00:46:36.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:46:38.395 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T00:46:38.395 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:46:38.395 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:31:28.25 = 460323.75 arcseconds
2026-01-22T00:46:38.395 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -20:46:22.09 = -74782.09 arcseconds
2026-01-22T00:46:38.395 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-22T00:46:38.415 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:46:38.415 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.327
2026-01-22T00:46:38.415 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:46:38.415 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:31:28.252, -20:46:21.418).
2026-01-22T00:46:38.415 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 31 28.252  -20 46 21.418 .
2026-01-22T00:46:38.415 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 31 28.252  -20 46 21.418 .
2026-01-22T00:46:38.415 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 460323.78
2026-01-22T00:46:38.415 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -74781.418
2026-01-22T00:46:38.627 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:46:43.633 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T00:46:43.633 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:46:43.633 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:46:43.633 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:46:43.633 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:46:43.633 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:46:43.635 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:46:43.635 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:43.637 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:43.858 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:46:43.858 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:46:43.859 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035603.8598778
2026-01-22T00:46:45.135 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:46:45.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:46:48.118 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:46:48.119 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:48.141 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:48.143 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T00:46:54.164 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:46:54.164 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:46:54.165 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:46:54.165 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:46:54.165 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:46:54.167 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:46:54.167 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:54.168 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:54.299 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:46:54.299 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:46:54.301 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035614.3014874
2026-01-22T00:46:55.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:46:55.667 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:46:58.561 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:46:58.561 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:46:58.582 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:46:58.673 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T00:47:05.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:47:06.443 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides None None None to host 127.0.0.1 on port 12360
2026-01-22T00:47:06.443 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:47:06.443 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:47:09.446 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides None None None
2026-01-22T00:47:09.446 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides None None None
2026-01-22T00:47:11.448 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:47:15.301 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:47:25.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:47:35.321 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:47:35.322 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:47:13.990776
2026-01-22T00:47:35.322 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:47:13.990776
2026-01-22T00:47:35.322 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:47:35.322 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:47:35.322 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:47:35.322 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:47:35&start_after=2026-01-20T22:47:35&end_after=2026-01-21T22:47:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:47:35.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:47:35.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:47:35.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:47:35.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:47:35.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:47:35.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:47:35.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:47:35.445 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:47:35.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:47:35.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:47:35.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:47:35.449 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 878.549864
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:47:35.450169    Obs time: 2026-01-21 23:02:14
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:38.549831
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  878
2026-01-22T00:47:35.450 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:47:44.459 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:47:54.469 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:48:04.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:48:14.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:48:24.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:48:34.509 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:48:34.532 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:48:14.187966
2026-01-22T00:48:34.532 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:48:14.187966
2026-01-22T00:48:34.532 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:48:34.532 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:48:34.532 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:48:34.532 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:48:34&start_after=2026-01-20T22:48:34&end_after=2026-01-21T22:48:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:48:34.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:48:34.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:48:34.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:48:34.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:48:34.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:48:34.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:48:34.654 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:48:34.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:48:34.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:48:34.657 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:48:34.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 819.340164
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:48:34.659868    Obs time: 2026-01-21 23:02:14
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:39.340132
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  819
2026-01-22T00:48:34.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:48:43.669 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:48:51.481 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T00:48:51.481 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T00:48:51.489 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:48:51.489 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:48:51.549 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:48:52.550 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T00:48:52.550 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T00:48:52.564 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:48:53.565 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:48:53.617 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:48:53.679 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:48:54.618 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:48:54.619 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.03
2026-01-22T00:48:54.620 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:48:06
2026-01-22T00:48:54.620 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:48:06
2026-01-22T00:48:54.620 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T00:48:54.620 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0929503149606299
2026-01-22T00:48:59.657 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T00:48:59.657 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:48:59.657 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:48:59.658 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:48:59.658 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:48:59.658 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:48:59.660 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:48:59.660 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:48:59.662 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:48:59.772 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:48:59.772 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:48:59.774 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035739.7743511
2026-01-22T00:49:03.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:49:04.032 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:49:04.032 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:04.034 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:04.165 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T00:49:08.168 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T00:49:08.168 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T00:49:13.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:49:18.218 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T00:49:18.218 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:49:18.218 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:31:28.25 = 460323.75 arcseconds
2026-01-22T00:49:18.218 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -20:46:22.09 = -74782.09 arcseconds
2026-01-22T00:49:18.218 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-22T00:49:18.239 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:49:18.239 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.33
2026-01-22T00:49:18.239 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:49:18.239 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:31:28.321, -20:46:19.543).
2026-01-22T00:49:18.239 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 31 28.321  -20 46 19.543 .
2026-01-22T00:49:18.239 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 31 28.321  -20 46 19.543 .
2026-01-22T00:49:18.239 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 460324.815
2026-01-22T00:49:18.239 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -74779.543
2026-01-22T00:49:18.451 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:49:23.474 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T00:49:23.474 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:49:23.474 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:49:23.474 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:49:23.474 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:49:23.474 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:49:23.476 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:49:23.476 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:23.478 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:23.611 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:49:23.611 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:49:23.613 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035763.6136403
2026-01-22T00:49:23.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:49:24.976 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:49:27.873 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:49:27.873 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:27.875 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:27.982 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T00:49:31.987 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T00:49:32.008 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T00:49:32.008 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T00:49:32.008 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 08:31:28.25 = 460323.75 arcseconds
2026-01-22T00:49:32.008 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -20:46:22.09 = -74782.09 arcseconds
2026-01-22T00:49:32.009 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  512, 512
2026-01-22T00:49:32.033 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T00:49:32.034 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = 179.331
2026-01-22T00:49:32.034 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T00:49:32.034 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (08:31:28.239, -20:46:22.130).
2026-01-22T00:49:32.034 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  08 31 28.239  -20 46 22.130 .
2026-01-22T00:49:32.034 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 08 31 28.239  -20 46 22.130 .
2026-01-22T00:49:32.034 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 460323.585
2026-01-22T00:49:32.034 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -74782.13
2026-01-22T00:49:32.246 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T00:49:33.716 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:49:33.717 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:49:14.389367
2026-01-22T00:49:33.717 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:49:14.389367
2026-01-22T00:49:33.717 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:49:33.717 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:49:33.717 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:49:33.717 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:49:33&start_after=2026-01-20T22:49:33&end_after=2026-01-21T22:49:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:49:33.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:49:33.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:49:33.835 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:49:33.836 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:49:33.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:49:33.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:49:33.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:49:33.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:49:33.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:49:33.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:49:33.844 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 760.154486
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:49:33.845546    Obs time: 2026-01-21 23:02:14
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:40.154454
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  760
2026-01-22T00:49:33.845 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:49:37.272 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T00:49:37.272 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:49:37.272 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:49:37.272 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:49:37.273 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:49:37.273 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:49:37.275 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:49:37.275 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:37.276 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:37.411 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:49:37.411 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:49:37.413 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035777.4136536
2026-01-22T00:49:38.774 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:49:41.673 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:49:41.673 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:41.692 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:41.780 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T00:49:42.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:49:47.803 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T00:49:47.805 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:49:47.805 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:49:47.805 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:49:47.805 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:49:47.807 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:49:47.807 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:47.809 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:47.940 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:49:47.940 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:49:47.942 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035787.942536
2026-01-22T00:49:49.307 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T00:49:52.202 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:49:52.202 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:49:52.204 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:49:52.314 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T00:49:52.314 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T00:49:52.314 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T00:49:52.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:49:55.317 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T00:49:55.317 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T00:49:57.319 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T00:49:57.319 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:49:57.319 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:49:57.319 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:49:57.319 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:49:57.319 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:49:57.319 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:49:57.319 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:49:58.354 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:50:00.356 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T00:50:00.356 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:50:00.356 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:50:01.241 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:50:01.241 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json was run successfully
2026-01-22T00:50:01.241 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 3
2026-01-22T00:50:01.241 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 3
2026-01-22T00:50:01.241 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json
2026-01-22T00:50:01.241 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Repeats = 3
2026-01-22T00:50:01.242 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}], 'script_name': 'NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json'}
2026-01-22T00:50:01.242 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:50:01.242 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:50:01.742 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:50:01.742 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 1 times
2026-01-22T00:50:01.742 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T00:50:01.742 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:50:01.742 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:50:01.742 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:50:01.742 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:50:01.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:50:01.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:50:01.743 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:50:01.743 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:50:01.743 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:50:01.743 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:50:01.754 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:50:01.754 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:50:01.755 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:50:01.755 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:50:01.755 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:50:01.826 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:50:02.827 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:50:02.828 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 3
2026-01-22T00:50:02.828 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:3
2026-01-22T00:50:02.828 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 3
2026-01-22T00:50:02.842 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:50:02.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:50:03.843 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:50:03.895 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:50:04.896 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:50:04.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.13
2026-01-22T00:50:04.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:49:10
2026-01-22T00:50:04.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:49:10
2026-01-22T00:50:04.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -25.6, 2698
2026-01-22T00:50:04.897 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.08693984251968502
2026-01-22T00:50:04.900 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 3
2026-01-22T00:50:04.900 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:50:04.900 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:50:05.928 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:50:07.948 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:50:07.948 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:50:07.949 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:50:07.949 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:50:07.949 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:50:07.951 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:50:07.951 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:50:07.952 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:50:08.086 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:50:08.086 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:50:08.088 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035808.088372
2026-01-22T00:50:08.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:50:08.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:50:08.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:08.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:08.967 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:08.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:11.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:11.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:11.970 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:11.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:12.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:50:13.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.591/30.0
2026-01-22T00:50:14.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:14.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:14.993 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:14.993 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:15.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.513/30.0
2026-01-22T00:50:17.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.445/30.0
2026-01-22T00:50:17.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:18.011 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:18.011 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:18.011 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:19.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.377/30.0
2026-01-22T00:50:21.014 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:21.015 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:21.015 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:21.015 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:21.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.309/30.0
2026-01-22T00:50:22.925 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:50:23.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.24/30.0
2026-01-22T00:50:24.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:24.036 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:24.036 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:24.036 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:25.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.173/30.0
2026-01-22T00:50:27.039 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:27.060 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:50:27.060 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:27.060 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T00:50:28.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.105/30.0
2026-01-22T00:50:30.063 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:30.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0009999999999763531
2026-01-22T00:50:30.064 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:30.064 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:30.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.037/30.0
2026-01-22T00:50:32.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.943/30.0
2026-01-22T00:50:32.933 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:50:32.933 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:50:14.587152
2026-01-22T00:50:32.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:50:14.587152
2026-01-22T00:50:32.934 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:50:32.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:50:32.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:50:32.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:50:32&start_after=2026-01-20T22:50:32&end_after=2026-01-21T22:50:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:50:33.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:50:33.055 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:50:33.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:50:33.057 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:50:33.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:50:33.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:50:33.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:50:33.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:50:33.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:50:33.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:50:33.065 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 700.933537
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:50:33.066496    Obs time: 2026-01-21 23:02:14
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:40.933504
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  700
2026-01-22T00:50:33.066 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:50:33.067 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:33.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:33.085 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:33.085 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:34.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.863/30.0
2026-01-22T00:50:36.088 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:36.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:36.105 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:36.105 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:36.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.795/30.0
2026-01-22T00:50:38.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:50:39.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:39.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:50:39.109 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:39.109 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T00:50:39.435 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:50:39.435 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:50:39.455 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:50:42.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:50:42.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:50:42.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T00:50:42.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T00:50:42.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:50:42.112 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:50:42.113 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:50:42.113 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:50:42.123 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:50:42.124 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:50:42.124 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T00:50:42.124 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T00:50:42.124 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T00:50:42.301 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T00:50:43.337 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T00:50:44.357 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T00:50:45.378 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T00:50:46.398 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-22T00:50:47.419 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-22T00:50:48.440 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 7
2026-01-22T00:50:49.510 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T00:50:50.511 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:50:50.563 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:50:51.564 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:50:51.566 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.16
2026-01-22T00:50:51.566 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:50:15
2026-01-22T00:50:51.566 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:50:15
2026-01-22T00:50:51.566 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T00:50:51.566 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09082425196850392
2026-01-22T00:50:51.570 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T00:50:51.570 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:50:51.570 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:50:51.570 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:50:51.616 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:50:52.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:50:52.617 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:50:52.617 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:50:52.617 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:50:53.652 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:50:55.672 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:50:55.672 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:50:55.672 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:50:55.672 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:50:55.672 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:50:55.674 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:50:55.674 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:50:55.676 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:50:55.808 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:50:55.808 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:50:55.810 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035855.8103402
2026-01-22T00:50:56.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:50:56.173 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:50:56.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:56.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:56.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:56.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:50:59.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:50:59.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:50:59.712 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:50:59.712 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:01.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.591/30.0
2026-01-22T00:51:02.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:51:02.715 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:02.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:51:02.731 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:02.731 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:03.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.551/30.0
2026-01-22T00:51:05.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.52/30.0
2026-01-22T00:51:05.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:05.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:51:05.752 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:05.752 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:07.351 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.491/30.0
2026-01-22T00:51:08.755 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:08.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:51:08.756 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:08.756 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:51:09.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.459/30.0
2026-01-22T00:51:11.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.429/30.0
2026-01-22T00:51:11.759 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:11.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:51:11.779 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:11.779 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:12.102 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:51:13.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.398/30.0
2026-01-22T00:51:14.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:14.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:51:14.783 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:14.783 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:15.472 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.368/30.0
2026-01-22T00:51:17.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.339/30.0
2026-01-22T00:51:17.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:17.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:51:17.806 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:17.806 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:19.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.307/30.0
2026-01-22T00:51:20.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:20.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:51:20.827 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:20.827 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:51:21.639 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.239/30.0
2026-01-22T00:51:22.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:51:23.708 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.171/30.0
2026-01-22T00:51:23.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:23.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:51:23.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:23.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:25.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.102/30.0
2026-01-22T00:51:26.192 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:51:26.192 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:51:26.212 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:51:26.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:51:27.778 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T00:51:27.778 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T00:51:27.778 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:51:27.778 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:51:27.778 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:51:27.778 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:51:27.814 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:51:27.815 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:51:27.815 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T00:51:27.815 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T00:51:27.815 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T00:51:27.865 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T00:51:28.885 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T00:51:29.906 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T00:51:30.927 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T00:51:31.948 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 5
2026-01-22T00:51:32.119 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:51:32.136 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:51:14.788819
2026-01-22T00:51:32.137 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:51:14.788819
2026-01-22T00:51:32.137 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:51:32.137 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:51:32.137 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:51:32.137 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:51:32&start_after=2026-01-20T22:51:32&end_after=2026-01-21T22:51:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:51:32.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:51:32.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:51:32.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:51:32.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:51:32.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:51:32.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:51:32.275 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:51:32.276 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:51:32.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:51:32.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:51:32.279 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 641.71907
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:51:32.280961    Obs time: 2026-01-21 23:02:14
2026-01-22T00:51:32.280 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:41.719039
2026-01-22T00:51:32.281 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  641
2026-01-22T00:51:32.281 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:51:32.968 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 6
2026-01-22T00:51:34.045 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T00:51:35.046 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:51:35.097 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:51:36.099 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:51:36.100 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.22
2026-01-22T00:51:36.100 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:50:47
2026-01-22T00:51:36.100 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:50:47
2026-01-22T00:51:36.100 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T00:51:36.101 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0908635433070866
2026-01-22T00:51:36.104 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T00:51:36.104 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:51:36.104 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:51:36.104 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:51:36.150 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:51:37.152 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:51:37.152 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:51:37.152 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:51:38.184 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:51:40.204 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:51:40.205 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:51:40.205 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:51:40.205 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:51:40.205 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:51:40.207 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:51:40.207 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:51:40.208 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:51:40.329 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:51:40.329 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:51:40.331 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035900.3316424
2026-01-22T00:51:40.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:51:40.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:51:41.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:41.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.001999999999981128
2026-01-22T00:51:41.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:41.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:41.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:51:44.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:44.243 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:51:44.243 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:44.243 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:51:45.780 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.591/30.0
2026-01-22T00:51:47.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:47.246 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:51:47.246 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:47.246 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:47.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.551/30.0
2026-01-22T00:51:49.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.52/30.0
2026-01-22T00:51:50.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:50.268 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:51:50.268 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:50.268 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:51.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:51:51.872 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.49/30.0
2026-01-22T00:51:53.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:53.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:51:53.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:53.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:51:53.902 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.46/30.0
2026-01-22T00:51:55.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.381/30.0
2026-01-22T00:51:56.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:56.294 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:51:56.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:56.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:51:58.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.362/30.0
2026-01-22T00:51:59.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:51:59.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:51:59.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:51:59.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:52:00.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.331/30.0
2026-01-22T00:52:01.310 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:52:02.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.301/30.0
2026-01-22T00:52:02.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:02.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:52:02.319 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:02.319 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:04.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.272/30.0
2026-01-22T00:52:05.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:05.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:52:05.321 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:05.322 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:52:06.122 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.24/30.0
2026-01-22T00:52:08.152 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.209/30.0
2026-01-22T00:52:08.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:08.343 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0009999999999763531
2026-01-22T00:52:08.343 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:08.343 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:52:10.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.18/30.0
2026-01-22T00:52:10.627 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:52:10.628 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:52:10.629 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:52:11.318 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:52:11.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:52:12.185 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T00:52:12.185 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T00:52:12.185 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:52:12.185 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:52:12.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:52:12.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:52:12.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:52:12.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:52:12.185 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:52:12.186 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:52:12.186 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:52:12.186 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:52:12.196 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:52:12.197 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:52:12.197 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T00:52:12.197 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T00:52:12.197 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T00:52:12.248 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T00:52:13.268 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T00:52:14.289 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T00:52:15.310 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T00:52:16.331 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 5
2026-01-22T00:52:17.405 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T00:52:18.406 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:52:18.425 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T00:52:19.426 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:52:19.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.64
2026-01-22T00:52:19.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:51:51
2026-01-22T00:52:19.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:51:51
2026-01-22T00:52:19.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T00:52:19.428 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0974003149606299
2026-01-22T00:52:19.430 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T00:52:19.430 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:52:19.430 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:52:19.430 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:52:19.444 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T00:52:20.445 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:52:20.445 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:52:20.445 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:52:21.331 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:52:21.489 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:52:23.492 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:52:23.492 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:52:23.492 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:52:23.492 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:52:23.492 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:52:23.494 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:52:23.494 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:52:23.496 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:52:23.596 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:52:23.597 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:52:23.598 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035943.5988193
2026-01-22T00:52:23.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:52:23.993 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:52:24.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:24.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:52:24.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:24.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:27.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:27.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:52:27.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:27.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:29.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.553/30.0
2026-01-22T00:52:30.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:30.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:52:30.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:30.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:31.241 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.514/30.0
2026-01-22T00:52:31.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:52:31.341 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:52:14.988483
2026-01-22T00:52:31.342 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:52:14.988483
2026-01-22T00:52:31.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:52:31.342 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:52:31.342 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:52:31.342 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:52:31&start_after=2026-01-20T22:52:31&end_after=2026-01-21T22:52:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:52:31.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:52:31.474 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:52:31.476 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:52:31.476 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:52:31.477 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:52:31.479 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:52:31.480 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:52:31.481 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:52:31.482 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:52:31.483 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:52:31.484 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:52:31.485 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:52:31.485 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:52:31.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:52:31.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:52:31.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 582.514183
2026-01-22T00:52:31.486 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:52:33.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.358/30.0
2026-01-22T00:52:33.487 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:52:33.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:52:33.504 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:52:33.504984    Obs time: 2026-01-21 23:02:14
2026-01-22T00:52:33.505 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:40.495016
2026-01-22T00:52:33.505 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  580
2026-01-22T00:52:33.505 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:52:33.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:33.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:52:33.545 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:33.545 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:52:35.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.315/30.0
2026-01-22T00:52:36.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:36.563 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:52:36.563 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:36.563 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:37.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.283/30.0
2026-01-22T00:52:39.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.254/30.0
2026-01-22T00:52:39.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:39.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:52:39.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:39.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:52:40.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:52:41.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.223/30.0
2026-01-22T00:52:42.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:42.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:52:42.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:42.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:43.438 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.191/30.0
2026-01-22T00:52:45.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.161/30.0
2026-01-22T00:52:45.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:45.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: 0.0
2026-01-22T00:52:45.595 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:45.595 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-22T00:52:47.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.13/30.0
2026-01-22T00:52:48.598 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:48.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0020000000000095497
2026-01-22T00:52:48.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:48.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:49.567 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.1/30.0
2026-01-22T00:52:50.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:52:51.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.031/30.0
2026-01-22T00:52:51.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:52:51.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:52:51.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:52:51.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:52:53.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:52:53.944 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:52:53.944 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:52:53.965 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:52:54.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:52:55.668 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T00:52:55.668 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T00:52:55.668 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:52:55.668 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:52:55.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:52:55.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:52:55.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:52:55.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:52:55.669 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:52:55.669 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:52:55.669 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:52:55.669 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:52:55.707 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:52:55.708 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:52:55.708 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-22T00:52:55.708 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-22T00:52:55.708 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-22T00:52:55.749 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-22T00:52:56.770 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-22T00:52:57.790 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-22T00:52:58.811 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-22T00:52:59.832 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 5
2026-01-22T00:53:00.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:53:00.852 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 6
2026-01-22T00:53:01.917 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-22T00:53:02.918 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:53:02.970 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T00:53:03.971 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:53:03.973 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.73
2026-01-22T00:53:03.973 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:52:55
2026-01-22T00:53:03.973 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:52:55
2026-01-22T00:53:03.973 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-22T00:53:03.973 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09880590551181101
2026-01-22T00:53:03.976 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-22T00:53:03.976 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:53:03.976 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:53:03.976 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:53:04.023 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T00:53:05.024 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:53:05.024 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:53:05.024 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:53:06.074 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:53:08.094 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:53:08.095 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:53:08.095 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:53:08.095 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:53:08.095 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:53:08.097 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:53:08.097 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:53:08.099 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:53:08.220 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:53:08.220 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:53:08.221 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769035988.2219143
2026-01-22T00:53:08.596 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:53:08.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:53:09.096 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:09.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:53:09.112 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:09.112 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:53:10.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:53:12.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:12.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:53:12.130 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:12.130 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:13.671 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.591/30.0
2026-01-22T00:53:15.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:15.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:53:15.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:15.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:53:15.701 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.551/30.0
2026-01-22T00:53:17.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.52/30.0
2026-01-22T00:53:18.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:18.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:53:18.155 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:18.155 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:19.762 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.491/30.0
2026-01-22T00:53:20.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:53:21.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:21.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:53:21.158 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:21.158 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:21.792 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.459/30.0
2026-01-22T00:53:23.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.431/30.0
2026-01-22T00:53:24.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:24.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:53:24.177 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:24.177 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:25.853 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.399/30.0
2026-01-22T00:53:27.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:27.200 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:53:27.200 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:27.200 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:27.884 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.368/30.0
2026-01-22T00:53:29.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.339/30.0
2026-01-22T00:53:30.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:30.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:53:30.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:30.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:53:30.562 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:53:30.563 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:53:15.186943
2026-01-22T00:53:30.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:53:15.186943
2026-01-22T00:53:30.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:53:30.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:53:30.563 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:53:30.563 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:53:30&start_after=2026-01-20T22:53:30&end_after=2026-01-21T22:53:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:53:30.681 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:53:30.682 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:53:30.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:53:30.684 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:53:30.685 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:53:30.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:53:30.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:53:30.689 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:53:30.690 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:53:30.691 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:53:30.693 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:53:30.694 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:53:30.694 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:53:30.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:53:30.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:53:30.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 523.305732
2026-01-22T00:53:30.695 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:53:31.944 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.308/30.0
2026-01-22T00:53:32.697 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:53:32.712 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:53:32.712 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:53:32.712772    Obs time: 2026-01-21 23:02:14
2026-01-22T00:53:32.712 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:41.287228
2026-01-22T00:53:32.712 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  521
2026-01-22T00:53:32.712 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:53:33.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:33.226 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:53:33.226 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:33.226 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:33.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.278/30.0
2026-01-22T00:53:36.005 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.247/30.0
2026-01-22T00:53:36.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:36.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:53:36.248 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:36.248 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:53:38.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.218/30.0
2026-01-22T00:53:38.566 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:53:38.566 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:53:38.584 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:53:39.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:53:39.717 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:53:40.037 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T00:53:40.037 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:53:40.037 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:53:40.450 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:53:40.450 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json was run successfully: iteration 1 of 3
2026-01-22T00:53:40.450 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}], 'script_name': 'NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json'}
2026-01-22T00:53:40.450 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:53:40.450 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:53:40.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 1 times
2026-01-22T00:53:40.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T00:53:40.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:53:40.951 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:53:40.951 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:53:40.951 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:53:40.962 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:53:40.963 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:53:40.963 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:53:40.963 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:53:40.963 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:53:41.149 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T00:53:42.168 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T00:53:43.188 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T00:53:44.208 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T00:53:45.228 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T00:53:46.249 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T00:53:47.270 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-22T00:53:48.319 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:53:49.320 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:53:49.320 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 3
2026-01-22T00:53:49.320 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:3
2026-01-22T00:53:49.320 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 3
2026-01-22T00:53:49.372 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:53:49.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:53:50.373 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:53:50.425 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:53:51.426 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:53:51.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.82
2026-01-22T00:53:51.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:53:27
2026-01-22T00:53:51.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:53:27
2026-01-22T00:53:51.428 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -25.6, 2698
2026-01-22T00:53:51.428 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0932995275590551
2026-01-22T00:53:51.431 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 3
2026-01-22T00:53:51.431 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:53:51.431 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:53:52.463 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:53:54.486 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:53:54.486 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:53:54.486 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:53:54.486 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:53:54.486 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:53:54.488 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:53:54.488 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:53:54.490 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:53:54.710 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:53:54.710 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:53:54.712 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036034.712095
2026-01-22T00:53:54.987 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:53:54.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:53:55.488 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:55.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:53:55.505 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:55.505 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:58.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:53:58.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:53:58.529 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:53:58.529 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:53:59.737 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:54:00.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.675/30.0
2026-01-22T00:54:01.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:01.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:01.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:01.531 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:02.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.636/30.0
2026-01-22T00:54:04.267 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.465/30.0
2026-01-22T00:54:04.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:04.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:04.553 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:04.553 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:06.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.445/30.0
2026-01-22T00:54:07.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:07.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:07.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:07.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:08.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.413/30.0
2026-01-22T00:54:09.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:54:10.374 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.383/30.0
2026-01-22T00:54:10.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:10.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:10.574 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:10.574 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:12.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.339/30.0
2026-01-22T00:54:13.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:13.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:54:13.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:13.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:54:14.449 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.309/30.0
2026-01-22T00:54:16.506 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.263/30.0
2026-01-22T00:54:16.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:16.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:54:16.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:16.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:18.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.206/30.0
2026-01-22T00:54:19.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:19.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:54:19.606 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:19.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:54:19.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:54:20.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.187/30.0
2026-01-22T00:54:22.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:22.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:54:22.625 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:22.625 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:22.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.095/30.0
2026-01-22T00:54:24.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:54:25.005 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:54:25.005 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:54:25.026 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:54:25.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:54:26.947 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T00:54:26.948 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T00:54:26.948 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:54:26.948 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:54:26.948 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:54:26.948 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:54:26.957 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:54:26.959 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:54:26.959 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T00:54:26.959 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T00:54:26.959 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T00:54:27.139 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T00:54:28.158 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T00:54:29.179 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T00:54:29.767 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:54:29.768 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:54:15.386551
2026-01-22T00:54:29.768 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:54:15.386551
2026-01-22T00:54:29.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:54:29.768 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:54:29.768 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:54:29.768 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:54:29&start_after=2026-01-20T22:54:29&end_after=2026-01-21T22:54:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:54:29.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:54:29.909 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:54:29.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:54:29.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:54:29.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:54:29.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:54:29.915 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:54:29.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:54:29.917 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:54:29.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:54:29.919 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:54:29.920 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:54:29.920 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:54:29.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:54:29.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:54:29.920 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 464.079369
2026-01-22T00:54:29.921 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:54:30.200 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T00:54:31.220 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-22T00:54:31.923 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:54:31.924 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:54:31.924 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:54:31.924727    Obs time: 2026-01-21 23:02:14
2026-01-22T00:54:31.924 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:42.075273
2026-01-22T00:54:31.924 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  462
2026-01-22T00:54:31.924 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:54:32.241 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-22T00:54:33.262 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 7
2026-01-22T00:54:34.307 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T00:54:35.309 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:54:35.361 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:54:36.362 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:54:36.363 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.84
2026-01-22T00:54:36.363 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:53:59
2026-01-22T00:54:36.363 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:53:59
2026-01-22T00:54:36.363 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T00:54:36.363 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09465606299212596
2026-01-22T00:54:36.366 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T00:54:36.366 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:54:36.366 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:54:36.366 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:54:36.376 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:54:37.377 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:54:37.377 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:54:37.377 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:54:38.407 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:54:38.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:54:40.429 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:54:40.429 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:54:40.478 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:54:40.478 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:54:40.478 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:54:40.480 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:54:40.480 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:54:40.481 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:54:40.595 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:54:40.595 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:54:40.597 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036080.5972853
2026-01-22T00:54:40.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:54:40.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:54:41.479 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:41.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:41.498 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:41.498 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:44.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:44.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:44.521 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:44.521 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:46.046 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.591/30.0
2026-01-22T00:54:47.524 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:47.525 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:47.525 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:47.525 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:48.076 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.551/30.0
2026-01-22T00:54:48.942 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:54:50.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.52/30.0
2026-01-22T00:54:50.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:50.546 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:50.546 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:50.546 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:52.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.49/30.0
2026-01-22T00:54:53.549 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:53.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:53.550 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:53.550 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:54.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.46/30.0
2026-01-22T00:54:56.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.43/30.0
2026-01-22T00:54:56.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:56.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:56.567 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:56.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:54:58.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.398/30.0
2026-01-22T00:54:58.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:54:59.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:54:59.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:54:59.571 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:54:59.571 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:00.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.368/30.0
2026-01-22T00:55:02.289 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.338/30.0
2026-01-22T00:55:02.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:02.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0030000000000143245. Last known sky angle: 0.0
2026-01-22T00:55:02.591 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:02.591 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0030000000000143245
2026-01-22T00:55:04.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.307/30.0
2026-01-22T00:55:05.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:05.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0030000000000143245
2026-01-22T00:55:05.594 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:05.594 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:55:06.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.277/30.0
2026-01-22T00:55:08.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.246/30.0
2026-01-22T00:55:08.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:08.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:55:08.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:08.614 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:08.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:55:10.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.216/30.0
2026-01-22T00:55:10.894 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:55:10.894 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:55:10.912 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:55:11.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:55:12.413 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T00:55:12.413 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T00:55:12.413 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:55:12.413 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:55:12.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:55:12.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:55:12.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:55:12.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:55:12.413 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:55:12.414 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:55:12.414 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:55:12.414 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:55:12.424 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:55:12.426 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:55:12.426 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T00:55:12.426 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T00:55:12.426 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T00:55:12.473 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T00:55:13.493 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T00:55:14.514 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T00:55:15.534 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T00:55:16.555 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 5
2026-01-22T00:55:17.576 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 6
2026-01-22T00:55:18.652 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T00:55:18.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:55:19.653 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:55:19.668 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:55:20.669 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:55:20.670 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.88
2026-01-22T00:55:20.670 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:54:31
2026-01-22T00:55:20.670 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:54:31
2026-01-22T00:55:20.670 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T00:55:20.670 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09468251968503935
2026-01-22T00:55:20.673 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T00:55:20.673 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:55:20.673 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:55:20.673 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:55:20.683 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:55:21.684 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:55:21.684 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:55:21.684 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:55:22.744 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:55:24.761 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:55:24.761 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:55:24.762 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:55:24.762 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:55:24.762 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:55:24.764 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:55:24.764 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:55:24.766 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:55:24.964 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:55:24.964 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:55:24.966 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036124.9664264
2026-01-22T00:55:25.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:55:25.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:55:25.763 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:25.782 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:55:25.782 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:25.782 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:28.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:28.803 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:55:28.803 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:28.803 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:55:28.980 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:55:28.981 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:55:15.588890
2026-01-22T00:55:28.981 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:55:15.588890
2026-01-22T00:55:28.981 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:55:28.981 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:55:28.981 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:55:28.981 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:55:28&start_after=2026-01-20T22:55:28&end_after=2026-01-21T22:55:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:55:29.095 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:55:29.096 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:55:29.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:55:29.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:55:29.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:55:29.101 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:55:29.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:55:29.103 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:55:29.104 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:55:29.105 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:55:29.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:55:29.107 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:55:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:55:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:55:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:55:29.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 404.892119
2026-01-22T00:55:29.108 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:55:30.340 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.666/30.0
2026-01-22T00:55:31.109 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:55:31.131 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:55:31.131 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:55:31.131864    Obs time: 2026-01-21 23:02:14
2026-01-22T00:55:31.131 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:42.868136
2026-01-22T00:55:31.131 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  402
2026-01-22T00:55:31.131 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:55:31.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:31.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:55:31.807 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:31.807 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:32.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.627/30.0
2026-01-22T00:55:34.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.559/30.0
2026-01-22T00:55:34.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:34.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:55:34.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:34.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:55:36.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.489/30.0
2026-01-22T00:55:37.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:37.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:55:37.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:37.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:38.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:55:38.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.421/30.0
2026-01-22T00:55:40.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.353/30.0
2026-01-22T00:55:40.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:40.835 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:55:40.835 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:40.835 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:55:42.749 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.285/30.0
2026-01-22T00:55:43.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:43.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:55:43.840 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:43.840 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:44.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.217/30.0
2026-01-22T00:55:46.843 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:46.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0009999999999763531. Last known sky angle: 0.0
2026-01-22T00:55:46.865 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:46.865 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0009999999999763531
2026-01-22T00:55:46.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.148/30.0
2026-01-22T00:55:48.144 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:55:48.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.082/30.0
2026-01-22T00:55:49.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:49.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0009999999999763531
2026-01-22T00:55:49.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:49.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:55:51.022 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.012/30.0
2026-01-22T00:55:52.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:55:52.888 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:55:52.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:55:52.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:55:53.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.944/30.0
2026-01-22T00:55:55.160 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:55:55.258 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:55:55.258 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:55:55.278 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:55:55.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:55:57.162 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T00:55:57.162 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T00:55:57.162 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:55:57.162 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:55:57.162 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:55:57.162 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:55:57.173 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:55:57.174 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:55:57.174 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T00:55:57.174 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T00:55:57.174 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T00:55:57.233 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T00:55:58.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:55:58.254 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T00:55:59.274 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T00:56:00.295 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T00:56:01.316 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 5
2026-01-22T00:56:02.337 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 6
2026-01-22T00:56:03.387 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T00:56:04.388 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:56:04.440 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T00:56:05.441 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:56:05.443 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 9.51
2026-01-22T00:56:05.443 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:55:36
2026-01-22T00:56:05.443 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:55:36
2026-01-22T00:56:05.443 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T00:56:05.443 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.099408937007874
2026-01-22T00:56:05.446 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T00:56:05.446 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:56:05.446 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:56:05.446 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:56:05.493 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T00:56:06.494 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:56:06.494 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:56:06.494 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:56:07.529 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:56:08.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:56:09.553 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:56:09.553 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:56:09.553 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:56:09.554 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:56:09.554 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:56:09.556 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:56:09.556 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:56:09.557 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:56:09.712 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:56:09.712 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:56:09.714 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036169.714474
2026-01-22T00:56:10.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:56:10.054 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:56:10.555 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:10.572 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T00:56:10.572 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:10.572 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:13.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:13.576 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:56:13.576 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:13.576 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:15.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.628/30.0
2026-01-22T00:56:16.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:16.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:56:16.580 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:16.580 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:56:17.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.588/30.0
2026-01-22T00:56:18.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:56:19.187 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.559/30.0
2026-01-22T00:56:19.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:19.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: -0.0010000000000047748
2026-01-22T00:56:19.604 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:19.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-22T00:56:21.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.527/30.0
2026-01-22T00:56:22.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:22.608 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0020000000000095497
2026-01-22T00:56:22.608 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:22.608 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:23.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.497/30.0
2026-01-22T00:56:25.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.467/30.0
2026-01-22T00:56:25.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:25.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:56:25.632 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:25.632 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:27.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.436/30.0
2026-01-22T00:56:28.179 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:56:28.196 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:56:15.788937
2026-01-22T00:56:28.196 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:56:15.788937
2026-01-22T00:56:28.196 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:56:28.196 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:56:28.197 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:56:28.197 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:56:28&start_after=2026-01-20T22:56:28&end_after=2026-01-21T22:56:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:56:28.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:56:28.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:56:28.316 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:56:28.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:56:28.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:56:28.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:56:28.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:56:28.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:56:28.322 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:56:28.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:56:28.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:56:28.325 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:56:28.325 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:56:28.325 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:56:28.325 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:56:28.326 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 345.674006
2026-01-22T00:56:28.326 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:56:28.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:28.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:56:28.634 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:28.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:29.339 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.406/30.0
2026-01-22T00:56:30.328 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:56:30.329 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:56:30.329 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:56:30.329851    Obs time: 2026-01-21 23:02:14
2026-01-22T00:56:30.329 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:43.670149
2026-01-22T00:56:30.329 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  343
2026-01-22T00:56:30.329 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:56:31.369 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.375/30.0
2026-01-22T00:56:31.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:31.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: 0.0
2026-01-22T00:56:31.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:31.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-22T00:56:33.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.345/30.0
2026-01-22T00:56:34.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:34.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: -0.0020000000000095497
2026-01-22T00:56:34.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:34.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T00:56:35.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.315/30.0
2026-01-22T00:56:37.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:56:37.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.284/30.0
2026-01-22T00:56:37.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:37.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T00:56:37.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:37.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:39.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.255/30.0
2026-01-22T00:56:40.009 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:56:40.010 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:56:40.011 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:56:40.683 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:56:41.493 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T00:56:41.493 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T00:56:41.493 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:56:41.493 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:56:41.493 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:56:41.493 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:56:41.504 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:56:41.505 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:56:41.506 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-22T00:56:41.506 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-22T00:56:41.506 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-22T00:56:41.553 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-22T00:56:42.573 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-22T00:56:43.594 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-22T00:56:44.615 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-22T00:56:45.635 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 5
2026-01-22T00:56:46.656 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 6
2026-01-22T00:56:47.347 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:56:47.726 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-22T00:56:48.727 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:56:48.741 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T00:56:49.742 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:56:49.744 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.85
2026-01-22T00:56:49.744 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:56:09
2026-01-22T00:56:49.744 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:56:09
2026-01-22T00:56:49.744 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-22T00:56:49.744 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09870669291338581
2026-01-22T00:56:49.747 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-22T00:56:49.747 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:56:49.747 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:56:49.747 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:56:49.756 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T00:56:50.757 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:56:50.757 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:56:50.757 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:56:51.824 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:56:53.837 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:56:53.837 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:56:53.837 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:56:53.837 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:56:53.837 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:56:53.839 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:56:53.839 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:56:53.841 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:56:54.044 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:56:54.044 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:56:54.046 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036214.0462935
2026-01-22T00:56:54.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:56:54.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:56:54.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:54.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:56:54.857 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:54.857 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:56:57.354 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:56:57.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:56:57.878 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:56:57.878 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:56:57.878 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:56:59.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.629/30.0
2026-01-22T00:57:00.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:00.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:00.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:00.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:01.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.551/30.0
2026-01-22T00:57:03.631 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.483/30.0
2026-01-22T00:57:03.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:03.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:03.904 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:03.904 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:05.699 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.415/30.0
2026-01-22T00:57:06.907 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:06.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:06.928 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:06.928 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:07.364 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:57:07.815 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.347/30.0
2026-01-22T00:57:09.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.231/30.0
2026-01-22T00:57:09.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:09.932 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:57:09.932 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:09.932 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T00:57:11.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.173/30.0
2026-01-22T00:57:12.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:12.951 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T00:57:12.951 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:12.951 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:14.009 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.107/30.0
2026-01-22T00:57:15.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:15.974 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:57:15.974 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:15.974 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:57:16.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.037/30.0
2026-01-22T00:57:17.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:57:18.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.97/30.0
2026-01-22T00:57:18.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:18.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-22T00:57:18.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:18.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:57:20.213 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.901/30.0
2026-01-22T00:57:21.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:21.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:57:21.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:21.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:22.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.833/30.0
2026-01-22T00:57:24.340 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:57:24.340 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:57:24.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:57:24.356 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:57:25.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:57:26.350 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T00:57:26.350 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T00:57:26.350 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T00:57:26.666 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T00:57:26.666 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json was run successfully: iteration 2 of 3
2026-01-22T00:57:26.667 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}}], 'script_name': 'NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json'}
2026-01-22T00:57:26.667 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T00:57:26.667 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T00:57:27.167 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T00:57:27.167 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 1 times
2026-01-22T00:57:27.167 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T00:57:27.167 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:57:27.167 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:57:27.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:57:27.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:57:27.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 3, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:57:27.168 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:57:27.168 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:57:27.168 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:57:27.168 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:57:27.168 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:57:27.178 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:57:27.180 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:57:27.180 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T00:57:27.180 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T00:57:27.180 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:57:27.370 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T00:57:27.383 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:57:27.400 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:57:15.988666
2026-01-22T00:57:27.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:57:15.988666
2026-01-22T00:57:27.400 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:57:27.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:57:27.400 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:57:27.400 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:57:27&start_after=2026-01-20T22:57:27&end_after=2026-01-21T22:57:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:57:27.514 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:57:27.515 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:57:27.517 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:57:27.518 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:57:27.518 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:57:27.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:57:27.521 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:57:27.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:57:27.523 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:57:27.524 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:57:27.526 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:57:27.526 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:57:27.526 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:57:27.526 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:57:27.526 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:57:27.527 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 286.472974
2026-01-22T00:57:27.527 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:57:28.390 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T00:57:29.410 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T00:57:29.529 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:57:29.543 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:57:29.544 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:57:29.544005    Obs time: 2026-01-21 23:02:14
2026-01-22T00:57:29.544 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:44.455995
2026-01-22T00:57:29.544 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  284
2026-01-22T00:57:29.544 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:57:30.430 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T00:57:31.450 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T00:57:32.479 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T00:57:33.508 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-22T00:57:34.557 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:57:35.558 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T00:57:35.558 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 3
2026-01-22T00:57:35.558 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:3
2026-01-22T00:57:35.558 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 3
2026-01-22T00:57:35.610 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T00:57:36.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:57:36.611 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T00:57:36.663 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T00:57:37.664 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:57:37.666 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.84
2026-01-22T00:57:37.713 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:57:13
2026-01-22T00:57:37.713 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:57:13
2026-01-22T00:57:37.713 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -25.6, 2698
2026-01-22T00:57:37.713 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09327937007874013
2026-01-22T00:57:37.715 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 3
2026-01-22T00:57:37.715 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:57:37.715 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:57:38.734 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:57:40.755 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:57:40.755 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:57:40.755 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:57:40.755 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:57:40.755 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:57:40.757 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:57:40.757 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:57:40.759 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:57:40.890 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:57:40.890 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:57:40.892 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036260.8920562
2026-01-22T00:57:41.256 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:57:41.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:57:41.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:41.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0010000000000047748
2026-01-22T00:57:41.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:41.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:57:44.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:44.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:57:44.779 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:44.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:46.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.589/30.0
2026-01-22T00:57:46.561 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:57:47.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:47.799 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:47.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:47.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:48.373 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.549/30.0
2026-01-22T00:57:50.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.52/30.0
2026-01-22T00:57:50.836 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:50.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:50.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:50.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:52.434 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.487/30.0
2026-01-22T00:57:53.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:53.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:53.862 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:53.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:54.465 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.459/30.0
2026-01-22T00:57:56.533 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.428/30.0
2026-01-22T00:57:56.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:57:56.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:56.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:56.868 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:56.868 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:57:58.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.36/30.0
2026-01-22T00:57:59.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:57:59.895 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:57:59.895 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:57:59.895 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:00.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.29/30.0
2026-01-22T00:58:02.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.225/30.0
2026-01-22T00:58:02.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:02.900 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:02.900 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:02.900 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:04.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.154/30.0
2026-01-22T00:58:05.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:05.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:05.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:05.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:06.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:58:06.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.085/30.0
2026-01-22T00:58:08.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:08.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:08.931 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:08.931 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:08.942 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.017/30.0
2026-01-22T00:58:11.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:58:11.226 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:58:11.226 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:58:11.251 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:58:11.933 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:58:13.012 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T00:58:13.012 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T00:58:13.013 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:58:13.013 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:58:13.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:58:13.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:58:13.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:58:13.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:58:13.013 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:58:13.014 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:58:13.014 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:58:13.014 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:58:13.052 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:58:13.055 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:58:13.055 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T00:58:13.055 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T00:58:13.055 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T00:58:13.227 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T00:58:14.263 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T00:58:15.283 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T00:58:16.304 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T00:58:16.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:58:17.325 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-22T00:58:18.346 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-22T00:58:19.366 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 7
2026-01-22T00:58:20.423 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T00:58:21.424 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:58:21.475 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:58:22.476 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:58:22.478 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 9.55
2026-01-22T00:58:22.479 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:57:45
2026-01-22T00:58:22.479 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:57:45
2026-01-22T00:58:22.479 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T00:58:22.480 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09665078740157478
2026-01-22T00:58:22.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T00:58:22.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:58:22.484 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:58:22.484 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:58:22.490 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T00:58:23.492 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:58:23.492 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:58:23.501 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:58:24.527 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:58:26.531 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:58:26.532 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:58:26.532 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:58:26.532 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:58:26.533 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:58:26.537 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:58:26.537 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:58:26.543 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:58:26.605 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:58:26.607 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:58:16.199352
2026-01-22T00:58:26.607 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:58:16.199352
2026-01-22T00:58:26.608 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:58:26.608 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:58:26.609 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:58:26.609 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:58:26&start_after=2026-01-20T22:58:26&end_after=2026-01-21T22:58:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:58:26.636 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:58:26.636 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:58:26.638 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036306.6383338
2026-01-22T00:58:26.744 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:58:26.752 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:58:26.760 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:58:26.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:58:26.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:58:26.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:58:26.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:58:26.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:58:26.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:58:26.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:58:26.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:58:26.783 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:58:26.783 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:58:26.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:58:26.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:58:26.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 227.21605
2026-01-22T00:58:26.784 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:58:27.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:58:27.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:58:27.535 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:27.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:58:27.554 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:27.554 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:58:28.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:58:28.813 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:58:28.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:58:28.814070    Obs time: 2026-01-21 23:02:14
2026-01-22T00:58:28.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:45.185930
2026-01-22T00:58:28.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  225
2026-01-22T00:58:28.814 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:58:30.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:30.559 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.002999999999985903. Last known sky angle: -0.0010000000000047748
2026-01-22T00:58:30.559 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:30.559 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.002999999999985903
2026-01-22T00:58:32.125 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.553/30.0
2026-01-22T00:58:33.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:33.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.002999999999985903
2026-01-22T00:58:33.579 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:33.579 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:34.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.512/30.0
2026-01-22T00:58:35.822 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:58:36.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.481/30.0
2026-01-22T00:58:36.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:36.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:36.585 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:36.585 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:38.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.454/30.0
2026-01-22T00:58:39.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:39.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:39.607 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:39.607 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:40.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.421/30.0
2026-01-22T00:58:42.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.39/30.0
2026-01-22T00:58:42.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:42.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:42.610 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:42.610 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:44.306 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.364/30.0
2026-01-22T00:58:45.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:45.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:58:45.627 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:45.627 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:58:45.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:58:46.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.332/30.0
2026-01-22T00:58:48.367 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.301/30.0
2026-01-22T00:58:48.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:48.630 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: -0.0010000000000047748
2026-01-22T00:58:48.630 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:48.630 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T00:58:50.398 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.271/30.0
2026-01-22T00:58:51.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:51.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T00:58:51.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:51.653 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:52.428 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.24/30.0
2026-01-22T00:58:54.459 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.212/30.0
2026-01-22T00:58:54.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:58:54.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:58:54.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:58:54.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:58:55.841 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:58:56.489 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.18/30.0
2026-01-22T00:58:57.036 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:58:57.036 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:58:57.038 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:58:57.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:58:58.489 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T00:58:58.490 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T00:58:58.490 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:58:58.490 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:58:58.490 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:58:58.490 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:58:58.501 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:58:58.502 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:58:58.502 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T00:58:58.502 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T00:58:58.502 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T00:58:58.549 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T00:58:59.570 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T00:59:00.591 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T00:59:01.611 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T00:59:02.637 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 5
2026-01-22T00:59:03.657 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 6
2026-01-22T00:59:04.677 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 7
2026-01-22T00:59:05.696 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 8
2026-01-22T00:59:05.850 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T00:59:06.716 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 9
2026-01-22T00:59:07.736 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 10
2026-01-22T00:59:07.736 [WARNING] [script_worker] [client.py] [set_filter()] Filter position 3 on slide 0 not achieved after 10 tries
2026-01-22T00:59:07.736 [INFO] [script_worker] [client.py] [set_filter()] Will move to temporary position 0
2026-01-22T00:59:07.768 [INFO] [script_worker] [client.py] [set_filter()] Number of retries = 1
2026-01-22T00:59:12.794 [INFO] [script_worker] [client.py] [set_filter()] Temporary position 0 not achieved after 5 seconds, but no matter, we'll try go back to the originally requested position
2026-01-22T00:59:12.974 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T00:59:13.994 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T00:59:15.052 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T00:59:15.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T00:59:16.083 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T00:59:17.104 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 5
2026-01-22T00:59:18.125 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 6
2026-01-22T00:59:19.145 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 7
2026-01-22T00:59:20.218 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T00:59:20.266 [INFO] [script_worker] [client.py] [set_filter()] Success after 1 retry/retries
2026-01-22T00:59:21.267 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:59:21.271 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:59:22.272 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T00:59:22.273 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.88
2026-01-22T00:59:22.273 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:58:49
2026-01-22T00:59:22.273 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:58:49
2026-01-22T00:59:22.273 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T00:59:22.273 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09468251968503935
2026-01-22T00:59:22.277 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T00:59:22.277 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T00:59:22.277 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T00:59:22.277 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T00:59:22.286 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T00:59:23.287 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T00:59:23.287 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T00:59:23.287 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T00:59:24.351 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T00:59:25.870 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T00:59:25.892 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T00:59:16.401506
2026-01-22T00:59:25.892 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T00:59:16.401506
2026-01-22T00:59:25.892 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T00:59:25.892 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T00:59:25.892 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T00:59:25.892 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T22:59:25&start_after=2026-01-20T22:59:25&end_after=2026-01-21T22:59:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T00:59:26.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:59:26.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:59:26.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:59:26.008 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:59:26.008 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:59:26.010 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:59:26.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:59:26.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:59:26.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:59:26.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T00:59:26.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T00:59:26.016 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T00:59:26.017 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T00:59:26.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T00:59:26.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T00:59:26.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 167.982781
2026-01-22T00:59:26.018 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T00:59:26.354 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T00:59:26.354 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T00:59:26.354 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T00:59:26.354 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T00:59:26.354 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T00:59:26.356 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T00:59:26.356 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:59:26.358 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:59:26.571 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T00:59:26.571 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T00:59:26.573 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036366.573254
2026-01-22T00:59:26.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T00:59:26.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T00:59:27.355 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:27.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:59:27.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:27.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:28.018 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T00:59:28.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T00:59:28.019 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 22:59:28.019828    Obs time: 2026-01-21 23:02:14
2026-01-22T00:59:28.019 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:45.980172
2026-01-22T00:59:28.019 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  165
2026-01-22T00:59:28.019 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T00:59:30.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:30.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:59:30.393 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:30.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:59:31.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.666/30.0
2026-01-22T00:59:33.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:33.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:59:33.395 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:33.395 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:34.052 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.59/30.0
2026-01-22T00:59:35.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T00:59:36.120 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.522/30.0
2026-01-22T00:59:36.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:36.416 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:59:36.416 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:36.416 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:38.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.454/30.0
2026-01-22T00:59:39.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:39.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:59:39.420 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:39.420 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:40.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.386/30.0
2026-01-22T00:59:42.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.316/30.0
2026-01-22T00:59:42.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:42.439 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:59:42.439 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:42.439 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:44.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.248/30.0
2026-01-22T00:59:45.033 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T00:59:45.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:45.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:59:45.442 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:45.442 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:46.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.18/30.0
2026-01-22T00:59:48.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:48.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T00:59:48.465 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:48.465 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:48.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.114/30.0
2026-01-22T00:59:50.596 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.046/30.0
2026-01-22T00:59:51.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:51.467 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T00:59:51.467 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:51.467 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T00:59:52.665 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.978/30.0
2026-01-22T00:59:54.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T00:59:54.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T00:59:54.491 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T00:59:54.491 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T00:59:54.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.91/30.0
2026-01-22T00:59:55.042 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T00:59:56.802 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 3/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/30.0
2026-01-22T00:59:56.966 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T00:59:56.966 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T00:59:56.968 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T00:59:57.494 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T00:59:58.804 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T00:59:58.804 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T00:59:58.804 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T00:59:58.804 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T00:59:58.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T00:59:58.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T00:59:58.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T00:59:58.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T00:59:58.804 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T00:59:58.804 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T00:59:58.805 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T00:59:58.805 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T00:59:58.814 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T00:59:58.815 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T00:59:58.815 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T00:59:58.815 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T00:59:58.815 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T00:59:58.872 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T00:59:59.892 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T01:00:00.913 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T01:00:01.982 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T01:00:03.003 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 5
2026-01-22T01:00:04.024 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T01:00:05.025 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:00:05.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:00:05.067 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T01:00:06.068 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:00:06.107 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.92
2026-01-22T01:00:06.107 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:59:21
2026-01-22T01:00:06.107 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:59:21
2026-01-22T01:00:06.107 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T01:00:06.107 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09722062992125982
2026-01-22T01:00:06.111 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T01:00:06.111 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:00:06.111 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:00:06.111 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:00:06.136 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T01:00:07.137 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:00:07.137 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:00:07.138 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:00:08.194 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:00:10.215 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T01:00:10.215 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:00:10.215 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:00:10.215 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:00:10.215 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:00:10.217 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:00:10.217 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:00:10.219 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:00:10.339 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:00:10.339 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:00:10.340 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036410.3409755
2026-01-22T01:00:10.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:00:10.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:00:11.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:11.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T01:00:11.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:11.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:14.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:14.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T01:00:14.254 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:14.254 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T01:00:15.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:00:15.827 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.553/30.0
2026-01-22T01:00:17.257 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:17.258 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T01:00:17.258 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:17.258 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:17.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.513/30.0
2026-01-22T01:00:19.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.445/30.0
2026-01-22T01:00:20.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:20.287 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T01:00:20.287 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:20.287 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:21.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.414/30.0
2026-01-22T01:00:23.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:23.313 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0030000000000143245. Last known sky angle: 0.0
2026-01-22T01:00:23.313 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:23.313 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0030000000000143245
2026-01-22T01:00:23.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.384/30.0
2026-01-22T01:00:25.072 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:00:25.073 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:00:16.599348
2026-01-22T01:00:25.073 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:00:16.599348
2026-01-22T01:00:25.073 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:00:25.073 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:00:25.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:00:25.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:00:25&start_after=2026-01-20T23:00:25&end_after=2026-01-21T23:00:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:00:25.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:00:25.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:00:25.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:00:25.206 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:00:25.206 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:00:25.212 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:00:25.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:00:25.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:00:25.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:00:25.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:00:25.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:00:25.219 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:00:25.219 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:00:25.219 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:00:25.219 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T01:00:25.219 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 108.780245
2026-01-22T01:00:25.220 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:00:26.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.354/30.0
2026-01-22T01:00:26.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:26.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0030000000000143245
2026-01-22T01:00:26.332 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:26.332 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:27.222 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:00:27.223 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:00:27.223 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:00:27.223091    Obs time: 2026-01-21 23:02:14
2026-01-22T01:00:27.223 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:46.776909
2026-01-22T01:00:27.223 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  106
2026-01-22T01:00:27.223 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:00:28.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.323/30.0
2026-01-22T01:00:29.335 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:29.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T01:00:29.336 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:29.336 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T01:00:30.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.293/30.0
2026-01-22T01:00:32.146 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.212/30.0
2026-01-22T01:00:32.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:32.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0010000000000047748
2026-01-22T01:00:32.356 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:32.356 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T01:00:34.214 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.194/30.0
2026-01-22T01:00:34.229 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:00:35.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:35.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T01:00:35.375 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:35.375 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:36.245 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.126/30.0
2026-01-22T01:00:38.275 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.096/30.0
2026-01-22T01:00:38.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:38.398 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: 0.0
2026-01-22T01:00:38.398 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:38.398 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-22T01:00:40.306 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.066/30.0
2026-01-22T01:00:40.638 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:00:40.638 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:00:40.658 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:00:41.401 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:00:42.308 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T01:00:42.308 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T01:00:42.308 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:00:42.308 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] ************ instscript: 
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] {'object': 'A11xOga', 'observer': 'Thobekile', 'gain': 'HIGH', 'binx': '2', 'biny': '2', 'readout_speed': 'FAST', 'shutter_mode': 'ALWAYS_OPEN', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 5, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '-06:39:36.00', 'targ_dec': '-99:54:00.00', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 30000, 'num_exposures': 1}
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Non-sidereal object chosen but slit is not IN: non-sidereal tracking set to False
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:00:42.308 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:00:42.308 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:00:42.318 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:00:42.319 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:00:42.319 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 5
2026-01-22T01:00:42.319 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:5
2026-01-22T01:00:42.319 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 5
2026-01-22T01:00:42.372 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 1
2026-01-22T01:00:43.392 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 2
2026-01-22T01:00:44.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:00:44.413 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 3
2026-01-22T01:00:45.434 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 4
2026-01-22T01:00:46.454 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 5 : try 5
2026-01-22T01:00:47.517 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 5 successfully
2026-01-22T01:00:48.566 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:00:48.607 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T01:00:49.609 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:00:49.610 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 12.92
2026-01-22T01:00:49.610 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 00:59:53
2026-01-22T01:00:49.610 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T00:59:53
2026-01-22T01:00:49.610 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -21.0, 2777
2026-01-22T01:00:49.610 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09864881889763777
2026-01-22T01:00:49.614 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 5
2026-01-22T01:00:49.614 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:00:49.614 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:00:49.614 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:00:49.660 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 5 successfully
2026-01-22T01:00:50.661 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:00:50.661 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:00:50.661 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:00:51.699 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:00:53.702 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='-06:39:36.00', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-99:54:00.00', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='Thobekile', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='A11xOga', comment='The object name')]
2026-01-22T01:00:53.702 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:00:53.702 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:00:53.702 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:00:53.702 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:00:53.704 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:00:53.704 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:00:53.706 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:00:53.844 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:00:53.844 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:00:53.846 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036453.846306
2026-01-22T01:00:54.203 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:00:54.203 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:00:54.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:00:54.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:54.726 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T01:00:54.726 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:54.726 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:57.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:00:57.730 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T01:00:57.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:00:57.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:00:59.295 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.591/30.0
2026-01-22T01:01:00.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:00.748 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T01:01:00.748 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:00.748 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:01:01.325 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.551/30.0
2026-01-22T01:01:03.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.52/30.0
2026-01-22T01:01:03.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:03.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T01:01:03.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:03.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T01:01:04.258 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:01:05.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.49/30.0
2026-01-22T01:01:06.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:06.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T01:01:06.774 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:06.774 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:01:07.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.459/30.0
2026-01-22T01:01:09.447 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 14.431/30.0
2026-01-22T01:01:09.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:09.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T01:01:09.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:09.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:01:11.478 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.399/30.0
2026-01-22T01:01:12.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:12.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T01:01:12.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:12.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T01:01:13.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.368/30.0
2026-01-22T01:01:14.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:01:15.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.339/30.0
2026-01-22T01:01:15.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:15.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T01:01:15.808 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:15.808 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:01:17.569 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.307/30.0
2026-01-22T01:01:18.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:18.829 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0
2026-01-22T01:01:18.829 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:18.829 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T01:01:19.599 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.277/30.0
2026-01-22T01:01:21.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.247/30.0
2026-01-22T01:01:21.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:01:21.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0010000000000047748
2026-01-22T01:01:21.833 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:01:21.833 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T01:01:23.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json , Iteration 1/1, Unit 5/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.216/30.0
2026-01-22T01:01:24.234 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:01:24.234 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:01:24.255 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:01:24.278 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:01:24.279 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:01:16.799910
2026-01-22T01:01:24.279 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:01:16.799910
2026-01-22T01:01:24.279 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:01:24.279 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:01:24.279 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:01:24.279 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:01:24&start_after=2026-01-20T23:01:24&end_after=2026-01-21T23:01:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:01:24.396 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:01:24.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:01:24.399 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:01:24.399 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:01:24.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:01:24.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:01:24.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:01:24.404 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:01:24.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:01:24.406 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:01:24.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:01:24.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:01:24.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:01:24.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:01:24.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T01:01:24.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 49.591446
2026-01-22T01:01:24.409 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:01:24.836 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:01:25.661 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T01:01:25.661 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:01:25.661 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:01:25.898 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:01:25.899 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json was run successfully: iteration 3 of 3
2026-01-22T01:01:25.899 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17512738 COMPLETED 13546 reason
2026-01-22T01:01:25.899 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17512738 COMPLETED 13546 reason
2026-01-22T01:01:25.899 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:01:25.899 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:01:25.899 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:01:25.899 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:01:25.899 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:01:25.899 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:01:26.411 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:01:26.433 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:01:26.433 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:01:26.433484    Obs time: 2026-01-21 23:02:14
2026-01-22T01:01:26.433 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:47.566516
2026-01-22T01:01:26.433 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  47
2026-01-22T01:01:26.433 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:01:28.902 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:01:28.902 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:01:30.904 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:01:30.904 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:01:30.904 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T01:01:30.904 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T01:01:30.904 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T01:01:30.907 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T01:01:30.907 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T23:02:14Z
2026-01-22T01:01:30.907 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T01:01:30.907 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T01:01:30.907 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T01:01:30.907 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T01:01:30.907 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T01:01:30.907 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:01:30.907 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:01:31.408 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:01:31.408 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T01:01:31.408 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:01:31.408 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:01:31.408 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:01:31.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:01:31.408 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:01:31.408 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:01:31.408 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T01:01:31.410 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 08:32:40.28748   Targ dec = -20:51:53.3376
2026-01-22T01:01:31.410 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:01:31.410 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:01:31.410 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:01:31.417 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:01:31.417 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:01:31.417 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:01:31.417 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:01:32.458 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:01:33.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:01:34.459 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:01:34.460 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:01:34.460 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:01:34.912 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:01:34.912 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T01:01:34.912 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T01:01:34.912 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T01:01:34.912 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T01:01:34.912 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17512738
2026-01-22T01:01:34.912 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T01:01:34.912 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T01:01:34.912 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T22:44:39', 'end': '2026-01-21T23:01:34', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1015.0', 'events': {}}} with config status ID 17512738
2026-01-22T01:01:35.049 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T01:01:35.049 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T22:43:49Z', 'guide_off', 'config_id 13546', 'config_status_id 17512738', 'update_OCS 17512738 ATTEMPTED', 'run_script setup_NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json', 'run_script NEOCP_A11xOga_follow_up_NS_17233985_13500_13546.json 3', 'update_OCS 17512738 COMPLETED 13546 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:02:14Z', 'run_script arc_flat_lamp_off.json'] at time 01:01:35
2026-01-22T01:01:43.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:01:53.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:02:03.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:02:13.483 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:02:23.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:02:23.511 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:02:16.999875
2026-01-22T01:02:23.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:02:16.999875
2026-01-22T01:02:23.511 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:02:23.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:02:23.511 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:02:23.511 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:02:23&start_after=2026-01-20T23:02:23&end_after=2026-01-21T23:02:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:02:23.620 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:02:23.621 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:02:23.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:02:23.623 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:02:23.624 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:02:23.625 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:02:23.626 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:02:23.627 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:02:23.629 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:02:23.629 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:02:23.631 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:02:23.632 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:02:23.632 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:02:23.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:02:23.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:02:14Z
2026-01-22T01:02:23.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -9.632205
2026-01-22T01:02:23.632 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:02:25.635 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:02:25.635 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:02:25.635 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:02:25.635980    Obs time: 2026-01-21 23:02:14
2026-01-22T01:02:25.636 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:48.364020
2026-01-22T01:02:25.636 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86388
2026-01-22T01:02:25.636 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:02:14Z', 'guide_off', 'config_id 13548', 'config_status_id 17513022', 'update_OCS 17513022 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234269_13502_13548.json', 'run_script ATLAS26ayq_17234269_13502_13548.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513022 COMPLETED 13548 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:23:37Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T01:02:25.636 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T01:02:25.636 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T01:02:25.636 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T01:02:25.636 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T01:02:25.636 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T01:02:25.636 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T01:02:25.637 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T01:02:25.637 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T01:02:25.637 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T01:02:25.637 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T01:02:25.637 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:02:25.637 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:02:25.637 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:02:25.637 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:02:25.637 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:02:32.643 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:02:42.654 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:02:52.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:03:02.674 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:03:12.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:03:22.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:03:22.695 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:03:17.203584
2026-01-22T01:03:22.695 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:03:17.203584
2026-01-22T01:03:22.695 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:03:22.695 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:03:22.695 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:03:22.695 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:03:22&start_after=2026-01-20T23:03:22&end_after=2026-01-21T23:03:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:03:22.806 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:03:22.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:03:22.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:03:22.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:03:22.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:03:22.812 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:03:22.812 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:03:22.814 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:03:22.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:03:22.816 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:03:22.817 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:03:22.818 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:03:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:03:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:03:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:03:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:25:00Z
2026-01-22T01:03:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1297.181446
2026-01-22T01:03:22.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:03:31.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:03:41.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:03:51.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:04:01.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:04:11.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:04:21.880 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:04:21.900 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:04:17.406144
2026-01-22T01:04:21.900 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:04:17.406144
2026-01-22T01:04:21.900 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:04:21.900 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:04:21.901 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:04:21.901 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:04:21&start_after=2026-01-20T23:04:21&end_after=2026-01-21T23:04:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:04:22.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:04:22.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:04:22.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:04:22.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:04:22.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:04:22.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:04:22.017 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:04:22.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:04:22.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:04:22.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:04:22.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:04:22.023 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:04:22.023 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:04:22.023 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:04:22.023 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:04:22.023 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:25:00Z
2026-01-22T01:04:22.023 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1237.976689
2026-01-22T01:04:22.023 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:04:31.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:04:35.545 [ERROR] [Execution thread] [schedule_poller.py] [do_guide_off()] Unable to switch guider off: [Errno 110] Connection timed out
2026-01-22T01:04:35.545 [ERROR] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Caught exception switching guiding off: Unable to switch guider off: [Errno 110] Connection timed out. Won't switch guiding off. Continuing with script
2026-01-22T01:04:35.545 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T23:02:14Z
2026-01-22T01:04:35.545 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T23:02:14Z
2026-01-22T01:04:35.545 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:04:35.545 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:04:35.545 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:04:35.545 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:04:35.545 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:04:41.042 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:04:51.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:05:01.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:05:11.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:05:21.082 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:05:21.083 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:05:17.606246
2026-01-22T01:05:21.083 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:05:17.606246
2026-01-22T01:05:21.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:05:21.083 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:05:21.083 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:05:21.083 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:05:21&start_after=2026-01-20T23:05:21&end_after=2026-01-21T23:05:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:05:21.217 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:05:21.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:05:21.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:05:21.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:05:21.221 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:05:21.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:05:21.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:05:21.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:05:21.226 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:05:21.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:05:21.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:25:00Z
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1178.770259
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:05:21.229773    Obs time: 2026-01-21 23:25:00
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:38.770227
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1178
2026-01-22T01:05:21.229 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:05:30.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:05:40.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:05:50.260 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:06:00.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:06:10.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:06:20.290 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:06:20.308 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:06:17.805795
2026-01-22T01:06:20.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:06:17.805795
2026-01-22T01:06:20.308 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:06:20.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:06:20.309 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:06:20.309 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:06:20&start_after=2026-01-20T23:06:20&end_after=2026-01-21T23:06:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:06:20.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:06:20.426 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:06:20.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:06:20.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:06:20.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:06:20.429 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:06:20.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:06:20.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:06:20.433 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:06:20.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:06:20.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1036.563427
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:06:20.436604    Obs time: 2026-01-21 23:23:37
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:16.563396
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1036
2026-01-22T01:06:20.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:06:29.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:06:39.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:06:46.617 [ERROR] [Execution thread] [schedule_poller.py] [do_guide_off()] Unable to switch guider off: [Errno 110] Connection timed out
2026-01-22T01:06:46.617 [ERROR] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Caught exception switching guiding off: Unable to switch guider off: [Errno 110] Connection timed out. Won't switch guiding off. Continuing with script
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13548
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13548
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17513022
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17513022
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17513022 ATTEMPTED
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17513022 ATTEMPTED
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 9.45647, 'targ_dec': -32.0086, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_ATLAS26ayq_17234269_13502_13548.json'}
2026-01-22T01:06:46.617 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:06:46.617 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17513022
2026-01-22T01:06:46.617 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T01:06:46.618 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T01:06:46.618 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17513022
2026-01-22T01:06:46.686 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T01:06:47.118 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:06:47.118 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_ATLAS26ayq_17234269_13502_13548.json 1 times
2026-01-22T01:06:47.118 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:06:47.120 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T01:06:47.120 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T01:06:47.120 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T01:06:49.466 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:06:50.145 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:51.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:52.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:53.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:54.229 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:55.248 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:56.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:57.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:58.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:59.326 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:06:59.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:07:00.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:01.368 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:02.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:03.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:04.424 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:05.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:06.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:07.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:08.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:09.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:07:09.526 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:10.548 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:11.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:12.583 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:13.601 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:14.622 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:15.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:16.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T01:07:17.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T01:07:17.684 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  9.45688156366712 is close enough to target ra = 9.45647
2026-01-22T01:07:17.684 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -32.0073474971395 is close enough to target dec = -32.0086
2026-01-22T01:07:17.684 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T01:07:17.684 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:07:17.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:07:17.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:07:17.684 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:07:17.684 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T01:07:17.684 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T01:07:17.694 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:07:17.694 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:07:17.861 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T01:07:18.881 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T01:07:19.498 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:07:19.519 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:07:18.006131
2026-01-22T01:07:19.519 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:07:18.006131
2026-01-22T01:07:19.520 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:07:19.520 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:07:19.520 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:07:19.520 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:07:19&start_after=2026-01-20T23:07:19&end_after=2026-01-21T23:07:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:07:19.640 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:07:19.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:07:19.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:07:19.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:07:19.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:07:19.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:07:19.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:07:19.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:07:19.650 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:07:19.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:07:19.652 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 977.346161
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:07:19.653871    Obs time: 2026-01-21 23:23:37
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:17.346129
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  977
2026-01-22T01:07:19.653 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:07:19.900 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T01:07:20.920 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T01:07:21.941 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T01:07:22.962 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T01:07:23.982 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-22T01:07:25.003 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 8
2026-01-22T01:07:26.059 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:07:27.060 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:07:27.060 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:07:27.075 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:07:28.076 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:07:28.128 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:07:28.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:07:29.129 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:07:29.131 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.86
2026-01-22T01:07:29.131 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:06:51
2026-01-22T01:07:29.131 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:06:51
2026-01-22T01:07:29.131 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:07:29.131 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09244708661417321
2026-01-22T01:07:29.134 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T01:07:29.135 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T01:07:29.135 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T01:07:29.143 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:07:29.143 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:07:29.218 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:07:30.220 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:07:30.220 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:07:30.272 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:07:31.273 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:07:31.324 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:07:32.326 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:07:32.339 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.86
2026-01-22T01:07:32.339 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:06:51
2026-01-22T01:07:32.339 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:06:51
2026-01-22T01:07:32.339 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:07:32.339 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09244708661417321
2026-01-22T01:07:37.408 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T01:07:37.408 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:07:37.408 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:07:37.408 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:07:37.408 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:07:37.408 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:07:37.410 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:07:37.410 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:07:37.432 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:07:37.560 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:07:37.560 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:07:37.562 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036857.562229
2026-01-22T01:07:38.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:07:42.823 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:07:42.823 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:07:42.825 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:07:42.917 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T01:07:46.921 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T01:07:46.921 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T01:07:48.683 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:07:56.973 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T01:07:56.973 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T01:07:56.973 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-22T01:07:56.973 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-22T01:07:56.973 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T01:07:56.993 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T01:07:56.993 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.631347
2026-01-22T01:07:56.993 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T01:07:56.993 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:26.849, -32:00:33.015).
2026-01-22T01:07:56.993 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 26.849  -32 00 33.015 .
2026-01-22T01:07:56.993 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 26.849  -32 00 33.015 .
2026-01-22T01:07:56.993 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510702.73500000004
2026-01-22T01:07:56.993 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115233.015
2026-01-22T01:07:57.205 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T01:07:58.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:08:02.229 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T01:08:02.229 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:08:02.229 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:08:02.229 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:08:02.230 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:08:02.230 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:08:02.231 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:08:02.231 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:08:02.233 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:08:02.377 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:08:02.377 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:08:02.379 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036882.379107
2026-01-22T01:08:03.731 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:08:06.639 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:08:06.639 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:08:06.641 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:08:06.737 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T01:08:08.703 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:08:10.741 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T01:08:18.714 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:08:18.715 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:08:18.205556
2026-01-22T01:08:18.715 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:08:18.205556
2026-01-22T01:08:18.715 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:08:18.715 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:08:18.715 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:08:18.715 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:08:18&start_after=2026-01-20T23:08:18&end_after=2026-01-21T23:08:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:08:18.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:08:18.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:08:18.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:08:18.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:08:18.903 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:08:18.904 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:08:18.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:08:18.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:08:18.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:08:18.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:08:18.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 918.088514
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:08:18.911517    Obs time: 2026-01-21 23:23:37
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:18.088483
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  918
2026-01-22T01:08:18.911 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:08:20.793 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T01:08:20.794 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T01:08:20.794 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-22T01:08:20.794 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-22T01:08:20.794 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T01:08:20.814 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T01:08:20.814 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.653728
2026-01-22T01:08:20.814 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T01:08:20.814 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:27.975, -31:57:50.066).
2026-01-22T01:08:20.814 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 27.975  -31 57 50.066 .
2026-01-22T01:08:20.814 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 27.975  -31 57 50.066 .
2026-01-22T01:08:20.814 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510719.625
2026-01-22T01:08:20.814 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115070.066
2026-01-22T01:08:21.025 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T01:08:26.049 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T01:08:26.049 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:08:26.049 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:08:26.049 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:08:26.049 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:08:26.049 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:08:26.051 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:08:26.051 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:08:26.053 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:08:26.178 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:08:26.178 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:08:26.180 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036906.180605
2026-01-22T01:08:27.551 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:08:27.920 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:08:30.438 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:08:30.438 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:08:30.456 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:08:30.557 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T01:08:36.581 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:08:36.581 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:08:36.581 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:08:36.581 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:08:36.581 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:08:36.583 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:08:36.583 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:08:36.585 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:08:36.745 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:08:36.745 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:08:36.746 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036916.7468987
2026-01-22T01:08:37.929 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:08:38.083 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:08:41.006 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:08:41.007 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:08:41.008 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:08:41.090 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T01:08:47.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:08:48.831 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9 to host 127.0.0.1 on port 12360
2026-01-22T01:08:48.832 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:08:48.832 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:08:51.835 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9
2026-01-22T01:08:51.835 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2016  11836  13.9
2026-01-22T01:08:53.837 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:08:57.995 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:09:08.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:09:18.014 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:09:18.033 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:08:18.205556
2026-01-22T01:09:18.033 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:08:18.205556
2026-01-22T01:09:18.033 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:09:18.033 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:09:18.033 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:09:18.033 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:09:18&start_after=2026-01-20T23:09:18&end_after=2026-01-21T23:09:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:09:18.143 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:09:18.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:09:18.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:09:18.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:09:18.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:09:18.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:09:18.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:09:18.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:09:18.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:09:18.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:09:18.155 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 858.843658
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:09:18.156375    Obs time: 2026-01-21 23:23:37
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:18.843625
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  858
2026-01-22T01:09:18.156 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:09:27.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:09:32.857 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T01:09:32.857 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:09:32.857 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:09:35.860 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T01:09:35.860 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T01:09:37.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:09:37.861 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:09:37.861 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:09:37.861 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:09:37.861 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:09:37.861 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:09:37.861 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:09:37.861 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:09:37.861 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:09:38.935 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:09:40.937 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:09:40.937 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:09:40.937 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:09:41.900 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:09:41.900 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_ATLAS26ayq_17234269_13502_13548.json was run successfully
2026-01-22T01:09:41.900 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:09:41.900 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:09:41.900 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:09:41.900 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script ATLAS26ayq_17234269_13502_13548.json
2026-01-22T01:09:41.900 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 600000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'ATLAS26ayq_17234269_13502_13548.json'}
2026-01-22T01:09:41.900 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:09:41.900 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:09:42.401 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:09:42.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script ATLAS26ayq_17234269_13502_13548.json 1 times
2026-01-22T01:09:42.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T01:09:42.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:09:42.401 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:09:42.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:09:42.401 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:09:42.401 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:09:42.401 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:09:42.401 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:09:42.401 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:09:42.412 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:09:42.413 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:09:42.413 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T01:09:42.413 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:09:42.413 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:09:42.478 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:09:43.527 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T01:09:43.527 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T01:09:43.527 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:09:43.527 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:09:43.568 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:09:44.569 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:09:44.621 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:09:45.622 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:09:45.624 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.66
2026-01-22T01:09:45.624 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:08:59
2026-01-22T01:09:45.624 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:08:59
2026-01-22T01:09:45.624 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:09:45.624 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09256834645669289
2026-01-22T01:09:45.626 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T01:09:45.626 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:09:45.626 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:09:46.681 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:09:47.186 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:09:48.684 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:09:48.684 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:09:48.684 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:09:48.684 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:09:48.684 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:09:48.686 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:09:48.686 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:09:48.687 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:09:48.826 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:09:48.826 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:09:48.827 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769036988.8279107
2026-01-22T01:09:49.184 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:09:49.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:09:49.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:09:49.706 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:09:49.706 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:09:49.706 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:09:52.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:09:52.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:09:52.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:09:52.710 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:09:54.277 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 594.591/600.0
2026-01-22T01:09:55.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:09:55.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:09:55.733 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:09:55.733 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:09:56.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 592.551/600.0
2026-01-22T01:09:57.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:09:58.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 590.485/600.0
2026-01-22T01:09:58.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:09:58.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:09:58.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:09:58.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:00.481 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 588.417/600.0
2026-01-22T01:10:01.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:01.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:01.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:01.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:02.549 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.347/600.0
2026-01-22T01:10:04.617 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.279/600.0
2026-01-22T01:10:04.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:04.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:04.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:04.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:06.685 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.211/600.0
2026-01-22T01:10:07.206 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:10:07.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:07.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:07.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:07.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:08.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.145/600.0
2026-01-22T01:10:10.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:10.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:10.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:10.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:10.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.075/600.0
2026-01-22T01:10:12.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 576.007/600.0
2026-01-22T01:10:13.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:13.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:10:13.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:13.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:10:14.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 573.939/600.0
2026-01-22T01:10:16.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:16.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-22T01:10:16.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:16.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:17.025 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 571.871/600.0
2026-01-22T01:10:17.216 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:10:17.217 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:09:18.408265
2026-01-22T01:10:17.217 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:09:18.408265
2026-01-22T01:10:17.217 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:10:17.217 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:10:17.217 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:10:17.217 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:10:17&start_after=2026-01-20T23:10:17&end_after=2026-01-21T23:10:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:10:17.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:10:17.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:10:17.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:10:17.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:10:17.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:10:17.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:10:17.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:10:17.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:10:17.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:10:17.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:10:17.340 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 799.658694
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:10:17.341338    Obs time: 2026-01-21 23:23:37
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:19.658662
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  799
2026-01-22T01:10:17.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:10:19.093 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 569.805/600.0
2026-01-22T01:10:19.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:19.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:19.840 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:19.840 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:21.161 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 567.735/600.0
2026-01-22T01:10:22.843 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:22.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:22.844 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:22.844 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:23.229 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 565.667/600.0
2026-01-22T01:10:25.297 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 563.6/600.0
2026-01-22T01:10:25.847 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:25.868 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:25.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:25.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:26.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:10:27.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 561.531/600.0
2026-01-22T01:10:28.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:28.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:28.873 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:28.873 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:29.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 559.463/600.0
2026-01-22T01:10:31.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 557.395/600.0
2026-01-22T01:10:31.876 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:31.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:31.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:31.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:33.569 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 555.328/600.0
2026-01-22T01:10:34.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:34.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:10:34.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:34.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:10:35.637 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 553.259/600.0
2026-01-22T01:10:36.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:10:37.705 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 551.191/600.0
2026-01-22T01:10:37.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:37.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:10:37.920 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:37.920 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:39.773 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.123/600.0
2026-01-22T01:10:40.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:40.923 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:40.923 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:40.923 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:41.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.055/600.0
2026-01-22T01:10:43.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 544.987/600.0
2026-01-22T01:10:43.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:43.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:43.941 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:43.941 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:45.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 542.919/600.0
2026-01-22T01:10:46.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:10:46.944 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:46.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:46.945 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:46.945 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:48.046 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 540.851/600.0
2026-01-22T01:10:49.948 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:49.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:49.964 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:49.964 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:50.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 538.784/600.0
2026-01-22T01:10:52.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 536.716/600.0
2026-01-22T01:10:52.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:52.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:52.968 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:52.968 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:54.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 534.647/600.0
2026-01-22T01:10:55.971 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:55.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:10:55.993 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:55.993 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:10:56.317 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 532.579/600.0
2026-01-22T01:10:56.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:10:58.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 530.511/600.0
2026-01-22T01:10:58.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:10:58.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:10:58.997 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:10:58.997 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:11:00.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 528.443/600.0
2026-01-22T01:11:01.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:01.999 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:11:01.999 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:01.999 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:02.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 526.375/600.0
2026-01-22T01:11:04.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 524.309/600.0
2026-01-22T01:11:05.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:05.023 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:11:05.023 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:05.023 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:06.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:11:06.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 522.24/600.0
2026-01-22T01:11:08.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:08.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:11:08.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:08.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:11:08.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 520.171/600.0
2026-01-22T01:11:10.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 518.103/600.0
2026-01-22T01:11:11.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:11.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:11:11.048 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:11.048 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:12.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 516.035/600.0
2026-01-22T01:11:14.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:14.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:11:14.051 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:14.051 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:14.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 513.967/600.0
2026-01-22T01:11:16.400 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:11:16.420 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:10:18.607641
2026-01-22T01:11:16.420 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:10:18.607641
2026-01-22T01:11:16.420 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:11:16.420 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:11:16.420 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:11:16.420 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:11:16&start_after=2026-01-20T23:11:16&end_after=2026-01-21T23:11:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:11:16.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:11:16.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:11:16.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:11:16.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:11:16.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:11:16.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:11:16.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:11:16.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:11:16.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:11:16.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:11:16.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 740.427666
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:11:16.572367    Obs time: 2026-01-21 23:23:37
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:20.427633
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  740
2026-01-22T01:11:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:11:16.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 511.899/600.0
2026-01-22T01:11:17.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:17.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:11:17.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:17.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:11:19.066 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 509.831/600.0
2026-01-22T01:11:20.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:20.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:11:20.058 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:20.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:21.134 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 507.762/600.0
2026-01-22T01:11:23.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:23.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:11:23.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:23.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:23.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 505.695/600.0
2026-01-22T01:11:25.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 503.628/600.0
2026-01-22T01:11:25.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:11:26.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:26.102 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:11:26.102 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:26.102 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:27.338 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 501.559/600.0
2026-01-22T01:11:29.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:29.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:11:29.120 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:29.120 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:11:29.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 499.492/600.0
2026-01-22T01:11:31.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 497.422/600.0
2026-01-22T01:11:32.124 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:32.143 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:11:32.143 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:32.143 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:33.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 495.354/600.0
2026-01-22T01:11:35.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:35.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:11:35.147 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:35.147 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:11:35.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:11:35.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 493.286/600.0
2026-01-22T01:11:37.678 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 491.22/600.0
2026-01-22T01:11:38.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:38.164 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:11:38.164 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:38.164 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:39.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 489.15/600.0
2026-01-22T01:11:41.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:41.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:11:41.187 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:41.187 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:11:41.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 487.082/600.0
2026-01-22T01:11:43.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 485.016/600.0
2026-01-22T01:11:44.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:44.191 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:11:44.191 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:44.191 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:11:45.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:11:45.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 482.946/600.0
2026-01-22T01:11:47.194 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:47.214 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:11:47.215 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:47.215 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:48.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 480.878/600.0
2026-01-22T01:11:50.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 478.81/600.0
2026-01-22T01:11:50.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:50.240 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:11:50.240 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:50.240 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:52.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 476.742/600.0
2026-01-22T01:11:53.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:53.246 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:11:53.246 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:53.246 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:11:54.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 474.674/600.0
2026-01-22T01:11:55.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:11:56.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:56.271 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:11:56.271 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:56.271 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:11:56.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 472.606/600.0
2026-01-22T01:11:58.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 470.538/600.0
2026-01-22T01:11:59.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:11:59.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:11:59.292 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:11:59.292 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:00.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 468.47/600.0
2026-01-22T01:12:02.295 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:02.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:12:02.296 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:02.296 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:12:02.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 466.402/600.0
2026-01-22T01:12:04.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 464.334/600.0
2026-01-22T01:12:05.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:05.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:12:05.316 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:05.316 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:05.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:12:06.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 462.266/600.0
2026-01-22T01:12:08.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:08.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:12:08.337 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:08.337 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:08.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 460.2/600.0
2026-01-22T01:12:10.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 458.13/600.0
2026-01-22T01:12:11.340 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:11.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:12:11.341 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:11.341 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:12:12.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 456.062/600.0
2026-01-22T01:12:14.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:14.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:12:14.365 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:14.365 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:14.902 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 453.994/600.0
2026-01-22T01:12:15.630 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:12:15.651 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:11:18.834696
2026-01-22T01:12:15.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:11:18.834696
2026-01-22T01:12:15.651 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:12:15.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:12:15.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:12:15.652 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:12:15&start_after=2026-01-20T23:12:15&end_after=2026-01-21T23:12:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:12:15.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:12:15.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:12:15.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:12:15.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:12:15.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:12:15.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:12:15.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:12:15.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:12:15.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:12:15.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:12:15.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 681.21241
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:12:15.787621    Obs time: 2026-01-21 23:23:37
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:21.212379
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  681
2026-01-22T01:12:15.787 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:12:16.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 451.926/600.0
2026-01-22T01:12:17.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:17.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:12:17.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:17.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:19.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 449.858/600.0
2026-01-22T01:12:20.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:20.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:12:20.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:20.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:21.106 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 447.79/600.0
2026-01-22T01:12:23.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 445.722/600.0
2026-01-22T01:12:23.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:23.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-22T01:12:23.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:23.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:12:24.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:12:25.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 443.654/600.0
2026-01-22T01:12:26.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:26.415 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:12:26.415 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:26.415 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:27.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 441.586/600.0
2026-01-22T01:12:29.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 439.518/600.0
2026-01-22T01:12:29.418 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:29.419 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:12:29.419 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:29.419 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:12:31.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 437.45/600.0
2026-01-22T01:12:32.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:32.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:12:32.442 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:32.442 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:33.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 435.382/600.0
2026-01-22T01:12:34.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:12:35.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:35.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:12:35.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:35.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:12:35.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 433.314/600.0
2026-01-22T01:12:37.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 431.246/600.0
2026-01-22T01:12:38.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:38.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:12:38.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:38.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:39.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 429.178/600.0
2026-01-22T01:12:41.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:41.471 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:12:41.471 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:41.471 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:41.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 427.11/600.0
2026-01-22T01:12:43.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 425.042/600.0
2026-01-22T01:12:44.473 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:44.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:12:44.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:44.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:44.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:12:45.922 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 422.974/600.0
2026-01-22T01:12:47.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:47.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:12:47.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:47.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:12:47.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 420.906/600.0
2026-01-22T01:12:50.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 418.839/600.0
2026-01-22T01:12:50.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:50.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:12:50.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:50.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:12:52.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 416.769/600.0
2026-01-22T01:12:53.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:53.512 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:12:53.513 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:53.513 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:12:54.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 414.701/600.0
2026-01-22T01:12:54.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:12:56.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 412.631/600.0
2026-01-22T01:12:56.516 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:56.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00099999999998
2026-01-22T01:12:56.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:56.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:12:58.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 410.564/600.0
2026-01-22T01:12:59.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:12:59.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:12:59.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:12:59.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:13:00.400 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 408.495/600.0
2026-01-22T01:13:02.469 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 406.429/600.0
2026-01-22T01:13:02.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:02.568 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:13:02.568 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:02.568 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:04.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.359/600.0
2026-01-22T01:13:04.836 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:13:05.571 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:05.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:05.574 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:05.574 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:06.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 402.291/600.0
2026-01-22T01:13:08.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:08.595 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:08.595 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:08.595 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:08.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 400.223/600.0
2026-01-22T01:13:10.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 398.156/600.0
2026-01-22T01:13:11.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:11.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:11.601 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:11.601 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:12.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 396.087/600.0
2026-01-22T01:13:14.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:14.607 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:14.607 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:14.607 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:14.847 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:13:14.849 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:12:19.034211
2026-01-22T01:13:14.850 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:12:19.034211
2026-01-22T01:13:14.850 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:13:14.850 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:13:14.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:13:14.851 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:13:14&start_after=2026-01-20T23:13:14&end_after=2026-01-21T23:13:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:13:14.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 394.019/600.0
2026-01-22T01:13:14.977 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:13:14.986 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:13:14.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:13:14.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:13:14.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:13:15.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:13:15.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:13:15.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:13:15.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:13:15.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:13:15.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 621.982074
2026-01-22T01:13:15.017 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:13:15.017978    Obs time: 2026-01-21 23:23:37
2026-01-22T01:13:15.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:21.982022
2026-01-22T01:13:15.018 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  621
2026-01-22T01:13:15.018 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:13:16.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 391.953/600.0
2026-01-22T01:13:17.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:17.634 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:17.635 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:17.635 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:19.012 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 389.883/600.0
2026-01-22T01:13:20.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:20.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:20.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:20.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:21.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 387.815/600.0
2026-01-22T01:13:23.148 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 385.747/600.0
2026-01-22T01:13:23.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:23.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:23.662 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:23.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:24.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:13:25.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 383.679/600.0
2026-01-22T01:13:26.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:26.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:26.684 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:26.684 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:27.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 381.611/600.0
2026-01-22T01:13:29.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 379.545/600.0
2026-01-22T01:13:29.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:29.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:29.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:29.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:31.421 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 377.475/600.0
2026-01-22T01:13:32.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:32.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:32.713 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:32.713 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:33.488 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 375.408/600.0
2026-01-22T01:13:34.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:13:35.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.341/600.0
2026-01-22T01:13:35.716 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:35.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:13:35.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:35.719 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:13:37.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.272/600.0
2026-01-22T01:13:38.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:38.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:13:38.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:38.742 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:39.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 369.165/600.0
2026-01-22T01:13:41.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:41.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:41.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:41.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:41.798 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 367.097/600.0
2026-01-22T01:13:43.867 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 365.029/600.0
2026-01-22T01:13:44.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:13:44.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:44.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-22T01:13:44.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:44.772 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:13:45.935 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 362.961/600.0
2026-01-22T01:13:47.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:47.777 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:13:47.778 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:47.778 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:48.003 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 360.893/600.0
2026-01-22T01:13:50.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 358.825/600.0
2026-01-22T01:13:50.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:50.799 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:50.799 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:50.799 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:52.137 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 356.758/600.0
2026-01-22T01:13:53.802 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:53.820 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:53.820 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:53.820 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:54.055 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:13:54.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 354.692/600.0
2026-01-22T01:13:56.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 352.623/600.0
2026-01-22T01:13:56.823 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:56.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:56.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:56.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:13:58.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 350.555/600.0
2026-01-22T01:13:59.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:13:59.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:13:59.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:13:59.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:00.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.487/600.0
2026-01-22T01:14:02.477 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.42/600.0
2026-01-22T01:14:02.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:02.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:14:02.867 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:02.867 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:14:04.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:14:04.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.351/600.0
2026-01-22T01:14:05.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:05.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:14:05.871 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:05.871 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:06.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.283/600.0
2026-01-22T01:14:08.681 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.215/600.0
2026-01-22T01:14:08.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:08.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:08.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:08.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:10.749 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.147/600.0
2026-01-22T01:14:11.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:11.915 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:11.915 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:11.915 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:12.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.079/600.0
2026-01-22T01:14:14.072 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:14:14.073 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:13:19.296685
2026-01-22T01:14:14.073 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:13:19.296685
2026-01-22T01:14:14.073 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:14:14.073 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:14:14.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:14:14.073 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:14:14&start_after=2026-01-20T23:14:14&end_after=2026-01-21T23:14:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:14:14.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:14:14.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:14:14.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:14:14.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:14:14.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:14:14.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:14:14.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:14:14.206 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:14:14.208 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:14:14.208 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:14:14.210 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:14:14.211 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:14:14.211 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:14:14.211 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:14:14.211 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:14:14.211 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:14:14.211 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 562.78868
2026-01-22T01:14:14.212 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:14:14.885 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.011/600.0
2026-01-22T01:14:14.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:14.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:14.937 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:14.937 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:16.213 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:14:16.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:14:16.233 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:14:16.233195    Obs time: 2026-01-21 23:23:37
2026-01-22T01:14:16.233 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:20.766805
2026-01-22T01:14:16.233 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  560
2026-01-22T01:14:16.233 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:14:16.953 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 331.943/600.0
2026-01-22T01:14:17.940 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:17.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:17.941 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:17.941 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:19.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 329.875/600.0
2026-01-22T01:14:20.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:20.963 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:20.963 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:20.963 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:21.089 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 327.807/600.0
2026-01-22T01:14:23.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 325.739/600.0
2026-01-22T01:14:23.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:14:23.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:23.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:23.967 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:23.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:25.225 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 323.671/600.0
2026-01-22T01:14:26.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:26.991 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:26.991 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:26.991 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:27.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 321.603/600.0
2026-01-22T01:14:29.361 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 319.536/600.0
2026-01-22T01:14:29.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:30.015 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:14:30.015 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:30.015 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:14:31.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 317.467/600.0
2026-01-22T01:14:33.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:33.036 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:14:33.036 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:33.036 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:33.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:14:33.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 315.399/600.0
2026-01-22T01:14:35.566 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 313.331/600.0
2026-01-22T01:14:36.039 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:36.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:36.057 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:36.057 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:37.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 311.263/600.0
2026-01-22T01:14:39.060 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:39.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:39.080 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:39.080 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:39.702 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 309.196/600.0
2026-01-22T01:14:41.770 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 307.127/600.0
2026-01-22T01:14:42.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:42.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:14:42.084 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:42.084 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:14:43.257 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:14:43.838 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.059/600.0
2026-01-22T01:14:45.087 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:45.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:14:45.108 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:45.108 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:45.906 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 302.991/600.0
2026-01-22T01:14:47.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 300.923/600.0
2026-01-22T01:14:48.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:48.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:48.125 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:48.125 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:50.042 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 298.854/600.0
2026-01-22T01:14:51.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:51.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:51.147 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:51.147 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:52.110 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 296.786/600.0
2026-01-22T01:14:53.267 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:14:54.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:54.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:14:54.151 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:54.151 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:14:54.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 294.718/600.0
2026-01-22T01:14:56.246 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 292.65/600.0
2026-01-22T01:14:57.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:14:57.172 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:14:57.172 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:14:57.172 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:14:58.314 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 290.582/600.0
2026-01-22T01:15:00.175 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:00.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:15:00.176 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:00.176 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:00.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 288.516/600.0
2026-01-22T01:15:02.450 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 286.446/600.0
2026-01-22T01:15:03.179 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:03.195 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:03.195 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:03.195 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:03.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:15:04.518 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 284.379/600.0
2026-01-22T01:15:06.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:06.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:06.220 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:06.220 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:06.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 282.311/600.0
2026-01-22T01:15:08.654 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 280.243/600.0
2026-01-22T01:15:09.223 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:09.243 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:15:09.243 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:09.243 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:15:10.722 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 278.176/600.0
2026-01-22T01:15:12.246 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:12.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:15:12.247 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:12.247 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:12.790 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 276.106/600.0
2026-01-22T01:15:13.281 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:15:13.301 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:14:19.498608
2026-01-22T01:15:13.301 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:14:19.498608
2026-01-22T01:15:13.301 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:15:13.301 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:15:13.301 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:15:13.301 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:15:13&start_after=2026-01-20T23:15:13&end_after=2026-01-21T23:15:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:15:13.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:15:13.417 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:15:13.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:15:13.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:15:13.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:15:13.421 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:15:13.422 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:15:13.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:15:13.425 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:15:13.426 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:15:13.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:15:13.428 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:15:13.428 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:15:13.428 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:15:13.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:15:13.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:15:13.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 503.571111
2026-01-22T01:15:13.429 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:15:14.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 274.038/600.0
2026-01-22T01:15:15.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:15.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:15.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:15.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:15.429 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:15:15.430 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:15:15.430 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:15:15.430694    Obs time: 2026-01-21 23:23:37
2026-01-22T01:15:15.430 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:21.569306
2026-01-22T01:15:15.430 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  501
2026-01-22T01:15:15.430 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:15:16.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 271.97/600.0
2026-01-22T01:15:18.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:18.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:15:18.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:18.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:15:18.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 269.902/600.0
2026-01-22T01:15:21.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 267.834/600.0
2026-01-22T01:15:21.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:21.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:15:21.297 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:21.297 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:15:22.434 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:15:23.130 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 265.766/600.0
2026-01-22T01:15:24.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:24.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:15:24.318 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:24.318 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:25.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 263.698/600.0
2026-01-22T01:15:27.266 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 261.63/600.0
2026-01-22T01:15:27.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:27.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:27.336 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:27.336 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:29.334 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 259.564/600.0
2026-01-22T01:15:30.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:30.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:15:30.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:30.339 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:15:31.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 257.494/600.0
2026-01-22T01:15:32.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:15:33.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:33.360 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:15:33.360 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:33.360 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:33.470 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 255.426/600.0
2026-01-22T01:15:35.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 253.358/600.0
2026-01-22T01:15:36.363 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:36.384 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:36.384 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:36.384 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:37.606 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 251.29/600.0
2026-01-22T01:15:39.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:39.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:15:39.404 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:39.404 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:15:39.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 249.222/600.0
2026-01-22T01:15:41.742 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 247.155/600.0
2026-01-22T01:15:42.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:42.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:15:42.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:42.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:15:42.452 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:15:43.810 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 245.086/600.0
2026-01-22T01:15:45.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:45.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:15:45.449 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:45.449 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:45.878 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 243.019/600.0
2026-01-22T01:15:47.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 240.951/600.0
2026-01-22T01:15:48.452 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:48.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:48.453 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:48.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:50.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 238.882/600.0
2026-01-22T01:15:51.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:51.480 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:51.480 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:51.480 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:52.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 236.816/600.0
2026-01-22T01:15:52.459 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:15:54.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 234.747/600.0
2026-01-22T01:15:54.483 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:54.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:54.484 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:54.484 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:56.218 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 232.679/600.0
2026-01-22T01:15:57.487 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:15:57.507 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:15:57.507 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:15:57.507 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:15:58.286 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 230.611/600.0
2026-01-22T01:16:00.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 228.542/600.0
2026-01-22T01:16:00.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:00.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:00.528 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:00.528 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:02.422 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 226.474/600.0
2026-01-22T01:16:02.466 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:16:03.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:03.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:03.553 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:03.553 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:04.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 224.406/600.0
2026-01-22T01:16:06.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:06.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:06.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:06.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:06.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 222.338/600.0
2026-01-22T01:16:08.627 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 220.27/600.0
2026-01-22T01:16:09.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:09.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:16:09.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:09.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:16:10.694 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 218.202/600.0
2026-01-22T01:16:12.476 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:16:12.477 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:15:19.774724
2026-01-22T01:16:12.477 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:15:19.774724
2026-01-22T01:16:12.477 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:16:12.477 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:16:12.477 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:16:12.477 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:16:12&start_after=2026-01-20T23:16:12&end_after=2026-01-21T23:16:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:16:12.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:12.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:16:12.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:12.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:12.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:16:12.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:16:12.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:16:12.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:16:12.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:16:12.596 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:16:12.598 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:16:12.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:16:12.600 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:16:12.601 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:16:12.603 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:16:12.604 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:16:12.604 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:16:12.604 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:16:12.604 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:16:12.604 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:16:12.604 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 444.395732
2026-01-22T01:16:12.605 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:16:12.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 216.134/600.0
2026-01-22T01:16:14.607 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:16:14.608 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:16:14.608 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:16:14.608083    Obs time: 2026-01-21 23:23:37
2026-01-22T01:16:14.608 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:22.391917
2026-01-22T01:16:14.608 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  442
2026-01-22T01:16:14.608 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:16:14.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 214.066/600.0
2026-01-22T01:16:15.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:15.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:15.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:15.603 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:16.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 211.998/600.0
2026-01-22T01:16:18.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:18.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:16:18.627 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:18.627 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:16:18.967 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 209.93/600.0
2026-01-22T01:16:21.035 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 207.862/600.0
2026-01-22T01:16:21.615 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:16:21.630 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:21.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:16:21.652 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:21.652 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:23.103 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 205.794/600.0
2026-01-22T01:16:24.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:24.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:16:24.654 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:24.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:16:25.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 203.726/600.0
2026-01-22T01:16:27.239 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 201.658/600.0
2026-01-22T01:16:27.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:27.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:16:27.673 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:27.674 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:29.307 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 199.589/600.0
2026-01-22T01:16:30.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:30.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:30.677 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:30.677 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:31.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 197.521/600.0
2026-01-22T01:16:31.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:16:33.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 195.454/600.0
2026-01-22T01:16:33.678 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:33.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:33.697 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:33.697 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:35.511 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 193.386/600.0
2026-01-22T01:16:36.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:36.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:36.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:36.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:37.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 191.318/600.0
2026-01-22T01:16:39.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 189.25/600.0
2026-01-22T01:16:39.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:39.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:39.736 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:39.736 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:41.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:16:41.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 187.182/600.0
2026-01-22T01:16:42.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:42.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:42.740 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:42.740 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:43.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 185.114/600.0
2026-01-22T01:16:45.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:45.761 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:45.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:45.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:45.851 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 183.045/600.0
2026-01-22T01:16:47.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 180.978/600.0
2026-01-22T01:16:48.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:48.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:48.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:48.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:49.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 178.91/600.0
2026-01-22T01:16:51.640 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:16:51.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:51.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:51.789 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:51.789 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:52.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 176.841/600.0
2026-01-22T01:16:54.123 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.773/600.0
2026-01-22T01:16:54.792 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:54.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:54.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:54.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:56.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.705/600.0
2026-01-22T01:16:57.811 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:16:57.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:16:57.830 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:16:57.830 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:16:58.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.615/600.0
2026-01-22T01:17:00.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.57/600.0
2026-01-22T01:17:00.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:00.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-22T01:17:00.834 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:00.834 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:17:01.650 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:17:02.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.502/600.0
2026-01-22T01:17:03.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:03.856 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.001
2026-01-22T01:17:03.856 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:03.856 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:17:04.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.434/600.0
2026-01-22T01:17:06.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.365/600.0
2026-01-22T01:17:06.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:06.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:17:06.860 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:06.860 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:08.599 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.297/600.0
2026-01-22T01:17:09.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:09.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:09.881 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:09.881 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:10.667 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.229/600.0
2026-01-22T01:17:11.660 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:17:11.677 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:16:19.974189
2026-01-22T01:17:11.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:16:19.974189
2026-01-22T01:17:11.678 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:17:11.678 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:17:11.678 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:17:11.678 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:17:11&start_after=2026-01-20T23:17:11&end_after=2026-01-21T23:17:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:17:11.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:17:11.800 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:17:11.801 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:17:11.802 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:17:11.803 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:17:11.803 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:17:11.805 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:17:11.806 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:17:11.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:17:11.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:17:11.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:17:11.811 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:17:11.811 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:17:11.811 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:17:11.811 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:17:11.811 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:17:11.811 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 385.188477
2026-01-22T01:17:11.812 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:17:12.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.162/600.0
2026-01-22T01:17:12.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:12.902 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:12.902 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:12.902 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:13.813 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:17:13.814 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:17:13.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:17:13.814054    Obs time: 2026-01-21 23:23:37
2026-01-22T01:17:13.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:23.185946
2026-01-22T01:17:13.814 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  383
2026-01-22T01:17:13.814 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:17:14.803 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.093/600.0
2026-01-22T01:17:15.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:15.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:15.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:15.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:16.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.026/600.0
2026-01-22T01:17:18.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:18.928 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:18.928 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:18.928 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:18.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.958/600.0
2026-01-22T01:17:20.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:17:21.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.89/600.0
2026-01-22T01:17:21.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:21.948 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:17:21.948 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:21.948 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:17:23.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 145.821/600.0
2026-01-22T01:17:24.951 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:24.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99899999999997
2026-01-22T01:17:24.952 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:24.952 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:17:25.143 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.754/600.0
2026-01-22T01:17:27.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.686/600.0
2026-01-22T01:17:27.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:27.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:17:27.976 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:27.976 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:17:29.317 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.579/600.0
2026-01-22T01:17:30.830 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:17:30.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:30.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:17:30.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:30.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:31.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.511/600.0
2026-01-22T01:17:33.453 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.443/600.0
2026-01-22T01:17:34.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:34.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:34.021 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:34.021 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:35.521 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.375/600.0
2026-01-22T01:17:37.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:37.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:37.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:37.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:37.589 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.309/600.0
2026-01-22T01:17:39.657 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.239/600.0
2026-01-22T01:17:40.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:40.063 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:40.063 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:40.063 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:40.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:17:41.725 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.173/600.0
2026-01-22T01:17:43.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:43.067 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:43.067 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:43.067 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:43.793 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.103/600.0
2026-01-22T01:17:45.861 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.035/600.0
2026-01-22T01:17:46.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:46.088 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:17:46.088 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:46.088 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:17:47.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.967/600.0
2026-01-22T01:17:49.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:49.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:17:49.111 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:49.111 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:17:49.997 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.899/600.0
2026-01-22T01:17:50.850 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:17:52.065 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.831/600.0
2026-01-22T01:17:52.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:52.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00000000000003
2026-01-22T01:17:52.132 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:52.132 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:17:54.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.763/600.0
2026-01-22T01:17:55.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:55.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-22T01:17:55.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:55.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:17:56.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 112.695/600.0
2026-01-22T01:17:58.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:17:58.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:17:58.157 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:17:58.157 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:17:58.269 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 110.628/600.0
2026-01-22T01:18:00.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 108.559/600.0
2026-01-22T01:18:00.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:18:01.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:01.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:18:01.163 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:01.163 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:02.405 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 106.491/600.0
2026-01-22T01:18:04.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:04.183 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:04.183 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:04.183 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:04.473 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 104.423/600.0
2026-01-22T01:18:06.541 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 102.355/600.0
2026-01-22T01:18:07.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:07.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:07.187 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:07.187 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:08.610 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 100.287/600.0
2026-01-22T01:18:10.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:10.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:10.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:10.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:10.678 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 98.219/600.0
2026-01-22T01:18:10.870 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:18:10.871 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:17:20.184916
2026-01-22T01:18:10.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:17:20.184916
2026-01-22T01:18:10.871 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:18:10.871 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:18:10.871 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:18:10.871 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:18:10&start_after=2026-01-20T23:18:10&end_after=2026-01-21T23:18:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:18:11.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:18:11.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:18:11.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:18:11.017 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:18:11.017 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:18:11.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:18:11.019 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:18:11.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:18:11.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:18:11.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:18:11.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:18:11.026 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:18:11.026 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:18:11.026 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:18:11.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:18:11.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:18:11.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 325.973722
2026-01-22T01:18:11.027 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:18:12.745 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 96.151/600.0
2026-01-22T01:18:13.029 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:18:13.030 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:18:13.030 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:18:13.030070    Obs time: 2026-01-21 23:23:37
2026-01-22T01:18:13.030 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:23.969930
2026-01-22T01:18:13.030 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  323
2026-01-22T01:18:13.030 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:18:13.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:13.214 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:13.214 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:13.214 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:14.814 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.083/600.0
2026-01-22T01:18:16.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:16.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:16.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:16.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:16.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 92.015/600.0
2026-01-22T01:18:18.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.948/600.0
2026-01-22T01:18:19.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:19.239 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:19.239 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:19.239 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:20.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:18:21.018 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.88/600.0
2026-01-22T01:18:22.242 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:22.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:18:22.262 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:22.262 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:18:23.086 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.811/600.0
2026-01-22T01:18:25.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.743/600.0
2026-01-22T01:18:25.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:25.266 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:18:25.266 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:25.266 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:27.222 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.675/600.0
2026-01-22T01:18:28.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:28.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:28.270 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:28.270 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:29.290 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 79.608/600.0
2026-01-22T01:18:30.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:18:31.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:31.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:31.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:31.290 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:31.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 77.538/600.0
2026-01-22T01:18:33.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 75.473/600.0
2026-01-22T01:18:34.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:34.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:34.293 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:34.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:35.494 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 73.404/600.0
2026-01-22T01:18:37.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:37.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:37.312 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:37.312 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:37.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 71.334/600.0
2026-01-22T01:18:39.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 69.266/600.0
2026-01-22T01:18:40.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:18:40.315 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:40.334 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:18:40.335 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:40.335 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:18:41.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 67.2/600.0
2026-01-22T01:18:43.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:43.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:18:43.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:43.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:43.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 65.131/600.0
2026-01-22T01:18:45.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 63.062/600.0
2026-01-22T01:18:46.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:46.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:46.358 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:46.358 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:47.902 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.994/600.0
2026-01-22T01:18:49.361 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:49.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:49.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:49.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:49.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.926/600.0
2026-01-22T01:18:50.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:18:52.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.859/600.0
2026-01-22T01:18:52.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:52.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:18:52.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:52.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:18:54.106 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.792/600.0
2026-01-22T01:18:55.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:55.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:18:55.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:55.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:18:56.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.722/600.0
2026-01-22T01:18:58.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.654/600.0
2026-01-22T01:18:58.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:18:58.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:18:58.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:18:58.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:00.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:19:00.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.586/600.0
2026-01-22T01:19:01.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:01.452 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:19:01.452 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:01.452 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:19:02.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.52/600.0
2026-01-22T01:19:04.446 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.45/600.0
2026-01-22T01:19:04.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:04.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.00099999999998
2026-01-22T01:19:04.454 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:04.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:19:06.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.382/600.0
2026-01-22T01:19:07.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:07.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-22T01:19:07.477 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:07.477 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:08.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.314/600.0
2026-01-22T01:19:10.082 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:19:10.083 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:18:20.384220
2026-01-22T01:19:10.083 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:18:20.384220
2026-01-22T01:19:10.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:19:10.083 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:19:10.084 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:19:10.084 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:19:10&start_after=2026-01-20T23:19:10&end_after=2026-01-21T23:19:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:19:10.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:19:10.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:19:10.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:19:10.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:19:10.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:19:10.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:19:10.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:19:10.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:19:10.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:19:10.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:19:10.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:19:10.205 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:19:10.205 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:19:10.205 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:19:10.205 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:19:10.205 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:19:10.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 266.793991
2026-01-22T01:19:10.206 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:19:10.480 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:10.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:10.481 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:10.481 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:10.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.246/600.0
2026-01-22T01:19:12.208 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:19:12.209 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:19:12.209 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:19:12.209762    Obs time: 2026-01-21 23:23:37
2026-01-22T01:19:12.209 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:24.790238
2026-01-22T01:19:12.209 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  264
2026-01-22T01:19:12.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:19:12.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.178/600.0
2026-01-22T01:19:13.484 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:13.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:13.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:13.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:14.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.11/600.0
2026-01-22T01:19:16.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:16.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:16.529 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:16.529 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:16.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.042/600.0
2026-01-22T01:19:18.922 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.976/600.0
2026-01-22T01:19:19.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:19:19.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:19.551 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:19:19.551 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:19.551 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:19:20.990 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.908/600.0
2026-01-22T01:19:22.554 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:22.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:19:22.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:22.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:23.058 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.838/600.0
2026-01-22T01:19:25.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.77/600.0
2026-01-22T01:19:25.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:25.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:25.588 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:25.588 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:27.194 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.702/600.0
2026-01-22T01:19:28.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:28.592 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:19:28.592 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:28.592 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:19:29.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:19:29.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.634/600.0
2026-01-22T01:19:31.330 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.566/600.0
2026-01-22T01:19:31.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:31.611 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:19:31.611 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:31.611 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:33.399 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.498/600.0
2026-01-22T01:19:34.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:34.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:34.614 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:34.614 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:35.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.43/600.0
2026-01-22T01:19:37.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.361/600.0
2026-01-22T01:19:37.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:37.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:37.637 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:37.637 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:39.230 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:19:39.640 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.246/600.0
2026-01-22T01:19:40.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:40.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:40.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:40.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:41.708 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.19/600.0
2026-01-22T01:19:43.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:43.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:19:43.664 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:43.664 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:19:43.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.122/600.0
2026-01-22T01:19:45.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.054/600.0
2026-01-22T01:19:46.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:46.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:19:46.668 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:46.668 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:47.912 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.986/600.0
2026-01-22T01:19:49.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:19:49.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:49.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:19:49.687 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:49.687 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:49.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:19:52.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:19:52.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:52.708 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:19:52.708 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:52.708 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:19:54.116 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:19:55.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:55.710 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:19:55.710 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:55.710 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:19:56.185 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:19:58.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:19:58.713 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:19:58.732 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:19:58.732 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:19:58.732 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:19:59.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:20:00.321 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:01.735 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:01.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:20:01.736 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:01.736 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:02.389 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:04.457 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:04.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:04.755 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:20:04.755 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:04.755 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:06.525 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:07.758 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:07.780 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:20:07.780 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:07.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:20:08.593 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:09.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:20:09.279 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:19:20.588353
2026-01-22T01:20:09.279 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:19:20.588353
2026-01-22T01:20:09.279 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:20:09.279 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:20:09.279 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:20:09.279 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:20:09&start_after=2026-01-20T23:20:09&end_after=2026-01-21T23:20:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:20:09.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:20:09.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:20:09.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:20:09.399 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:20:09.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:20:09.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:20:09.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:20:09.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:20:09.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:20:09.406 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:20:09.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:20:09.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:20:09.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:20:09.408 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:20:09.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:20:09.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:20:09.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 207.591454
2026-01-22T01:20:09.409 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:20:10.661 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:10.781 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:10.792 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:20:10.792 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:10.792 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:11.410 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:20:11.410 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:20:11.411 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:20:11.411019    Obs time: 2026-01-21 23:23:37
2026-01-22T01:20:11.411 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:25.588981
2026-01-22T01:20:11.411 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  205
2026-01-22T01:20:11.411 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:20:12.591 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:20:12.591 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:20:12.612 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:20:12.730 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 1/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:20:13.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:20:14.732 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T01:20:14.732 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T01:20:14.732 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:20:14.732 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:20:14.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:20:14.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:20:14.733 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:20:14.733 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:20:14.733 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:20:14.733 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:20:14.743 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:20:14.744 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:20:14.744 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T01:20:14.744 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T01:20:14.744 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T01:20:14.932 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T01:20:15.952 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T01:20:16.972 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T01:20:17.993 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T01:20:18.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:20:19.014 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-22T01:20:20.035 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-22T01:20:21.099 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T01:20:22.100 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:20:22.152 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T01:20:23.153 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:20:23.155 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.33
2026-01-22T01:20:23.155 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:19:41
2026-01-22T01:20:23.155 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:19:41
2026-01-22T01:20:23.155 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T01:20:23.155 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09011488188976377
2026-01-22T01:20:23.158 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T01:20:23.158 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:20:23.158 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:20:23.158 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:20:23.205 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T01:20:24.206 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:20:24.206 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:20:24.206 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:20:25.245 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:20:27.264 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:20:27.264 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:20:27.264 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:20:27.264 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:20:27.264 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:20:27.266 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:20:27.266 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:20:27.268 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:20:27.383 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:20:27.383 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:20:27.384 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769037627.3848927
2026-01-22T01:20:27.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:20:27.765 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:20:28.265 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:28.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:20:28.282 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:28.282 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:28.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:20:31.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:31.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:20:31.301 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:31.301 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:32.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.585/60.0
2026-01-22T01:20:34.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:34.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:20:34.305 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:34.305 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:34.874 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.55/60.0
2026-01-22T01:20:36.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.512/60.0
2026-01-22T01:20:37.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:37.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:20:37.324 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:37.324 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:20:38.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:20:38.937 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.488/60.0
2026-01-22T01:20:40.327 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:40.328 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:20:40.328 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:40.328 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:40.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.45/60.0
2026-01-22T01:20:42.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.426/60.0
2026-01-22T01:20:43.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:43.347 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:20:43.347 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:43.347 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:45.022 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.387/60.0
2026-01-22T01:20:46.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:46.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:20:46.350 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:46.350 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:47.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.363/60.0
2026-01-22T01:20:48.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:20:49.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.326/60.0
2026-01-22T01:20:49.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:49.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:20:49.369 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:49.369 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:20:51.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.303/60.0
2026-01-22T01:20:52.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:52.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-22T01:20:52.373 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:52.373 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:20:53.146 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.279/60.0
2026-01-22T01:20:55.169 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.239/60.0
2026-01-22T01:20:55.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:55.392 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-22T01:20:55.392 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:55.392 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:20:57.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.216/60.0
2026-01-22T01:20:58.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:20:58.396 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:20:58.396 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:20:58.396 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:20:58.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:20:59.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.179/60.0
2026-01-22T01:21:01.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.155/60.0
2026-01-22T01:21:01.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:01.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:21:01.420 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:01.420 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:03.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.113/60.0
2026-01-22T01:21:04.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:04.421 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:21:04.421 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:04.422 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:05.332 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.092/60.0
2026-01-22T01:21:07.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.055/60.0
2026-01-22T01:21:07.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:07.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:21:07.445 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:07.445 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:08.460 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:21:08.481 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:20:20.788689
2026-01-22T01:21:08.481 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:20:20.788689
2026-01-22T01:21:08.481 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:21:08.481 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:21:08.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:21:08.482 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:21:08&start_after=2026-01-20T23:21:08&end_after=2026-01-21T23:21:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:21:08.589 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:21:08.591 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:21:08.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:21:08.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:21:08.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:21:08.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:21:08.596 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:21:08.597 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:21:08.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:21:08.599 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:21:08.601 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:21:08.602 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:21:08.602 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:21:08.602 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:21:08.602 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:21:08.602 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:21:08.602 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 148.397449
2026-01-22T01:21:08.603 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:21:09.394 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.031/60.0
2026-01-22T01:21:10.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:10.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:21:10.447 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:10.447 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:10.605 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:21:10.606 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:21:10.606 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:21:10.606331    Obs time: 2026-01-21 23:23:37
2026-01-22T01:21:10.606 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:26.393669
2026-01-22T01:21:10.606 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  146
2026-01-22T01:21:10.606 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:21:11.417 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.991/60.0
2026-01-22T01:21:13.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:13.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.97/60.0
2026-01-22T01:21:13.464 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:21:13.464 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:13.464 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:15.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.931/60.0
2026-01-22T01:21:16.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:16.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:21:16.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:16.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:21:17.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.907/60.0
2026-01-22T01:21:17.612 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:21:19.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:19.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:21:19.489 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:19.489 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:21:19.622 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.835/60.0
2026-01-22T01:21:21.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.763/60.0
2026-01-22T01:21:22.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:22.491 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:21:22.491 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:22.491 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:23.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.74/60.0
2026-01-22T01:21:25.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:25.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:21:25.514 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:25.514 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:21:25.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.701/60.0
2026-01-22T01:21:27.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:21:27.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:28.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:28.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:21:28.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:28.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:29.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:31.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:31.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:21:31.536 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:31.536 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:31.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:33.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:34.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:34.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:21:34.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:34.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:21:35.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:37.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:37.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:21:37.542 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:37.542 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:37.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:21:37.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:39.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:40.545 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:40.563 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:21:40.564 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:40.564 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:21:41.955 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:43.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:43.566 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:21:43.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:43.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:21:43.978 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:46.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:46.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:46.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:21:46.588 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:46.588 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:21:47.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:21:48.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:49.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:21:49.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-22T01:21:49.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:21:49.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:21:50.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 2/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:21:50.781 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:21:50.781 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:21:50.795 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:21:52.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:21:52.593 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T01:21:52.593 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T01:21:52.593 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:21:52.593 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:21:52.593 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:21:52.593 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:21:52.593 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:21:52.593 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:21:52.593 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:21:52.593 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:21:52.603 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:21:52.603 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:21:52.604 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T01:21:52.604 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T01:21:52.604 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T01:21:52.662 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T01:21:53.683 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T01:21:54.703 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T01:21:55.724 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T01:21:56.792 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T01:21:57.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:21:57.793 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:21:57.807 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T01:21:58.808 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:21:58.809 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.33
2026-01-22T01:21:58.817 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:21:50
2026-01-22T01:21:58.817 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:21:50
2026-01-22T01:21:58.817 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T01:21:58.817 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0901949212598425
2026-01-22T01:21:58.821 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T01:21:58.821 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:21:58.821 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:21:58.821 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:21:58.860 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T01:21:59.861 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:21:59.861 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:21:59.861 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:22:00.906 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:22:02.925 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:22:02.925 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:22:02.925 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:22:02.926 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:22:02.926 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:22:02.928 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:22:02.928 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:22:02.929 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:22:03.044 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:22:03.044 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:22:03.046 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769037723.046488
2026-01-22T01:22:03.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:22:03.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:22:03.927 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:03.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:22:03.945 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:03.945 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:06.948 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:06.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:22:06.967 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:06.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:07.658 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:22:07.659 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:21:20.985479
2026-01-22T01:22:07.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:21:20.985479
2026-01-22T01:22:07.659 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:22:07.659 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:22:07.659 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:22:07.659 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:22:07&start_after=2026-01-20T23:22:07&end_after=2026-01-21T23:22:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:22:07.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:22:07.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:22:07.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:22:07.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:22:07.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:22:07.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:22:07.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:22:07.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:22:07.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:22:07.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:22:07.780 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:22:07.781 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:22:07.781 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:22:07.781 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:22:07.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:22:07.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:22:07.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 89.218241
2026-01-22T01:22:07.782 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:22:08.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.584/60.0
2026-01-22T01:22:09.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:22:09.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:22:09.784 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:22:09.784278    Obs time: 2026-01-21 23:23:37
2026-01-22T01:22:09.784 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:27.215722
2026-01-22T01:22:09.784 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  87
2026-01-22T01:22:09.784 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:22:09.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:09.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:22:09.970 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:09.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:10.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.549/60.0
2026-01-22T01:22:12.559 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.526/60.0
2026-01-22T01:22:12.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:12.995 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:22:12.995 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:12.995 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:14.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.487/60.0
2026-01-22T01:22:15.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:16.019 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:22:16.019 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:16.019 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:22:16.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.464/60.0
2026-01-22T01:22:16.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:22:18.644 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.425/60.0
2026-01-22T01:22:19.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:19.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:22:19.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:19.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:20.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.403/60.0
2026-01-22T01:22:22.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:22.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:22:22.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:22.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:22:22.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.331/60.0
2026-01-22T01:22:24.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.259/60.0
2026-01-22T01:22:25.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:25.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:22:25.049 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:25.050 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:26.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:22:26.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.189/60.0
2026-01-22T01:22:28.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:28.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:22:28.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:28.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:22:28.953 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.165/60.0
2026-01-22T01:22:31.024 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.093/60.0
2026-01-22T01:22:31.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:31.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:22:31.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:31.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:33.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.023/60.0
2026-01-22T01:22:34.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:34.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:22:34.081 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:34.081 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:22:35.119 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.999/60.0
2026-01-22T01:22:36.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:22:37.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:37.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.00000000000003
2026-01-22T01:22:37.101 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:37.101 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:22:37.190 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.927/60.0
2026-01-22T01:22:39.262 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.856/60.0
2026-01-22T01:22:40.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:40.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:22:40.105 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:40.105 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:41.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.784/60.0
2026-01-22T01:22:43.108 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:43.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:22:43.125 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:43.125 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:43.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.761/60.0
2026-01-22T01:22:45.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.722/60.0
2026-01-22T01:22:46.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:46.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:22:46.129 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:46.130 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:22:46.816 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:22:47.451 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.699/60.0
2026-01-22T01:22:49.130 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:49.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00099999999998
2026-01-22T01:22:49.150 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:49.150 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:22:49.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.596/60.0
2026-01-22T01:22:51.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.556/60.0
2026-01-22T01:22:52.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:52.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:22:52.154 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:52.154 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:53.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.535/60.0
2026-01-22T01:22:55.157 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:55.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:22:55.174 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:55.174 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:55.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.463/60.0
2026-01-22T01:22:56.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:22:57.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.39/60.0
2026-01-22T01:22:58.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:22:58.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:22:58.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:22:58.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:22:59.750 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.368/60.0
2026-01-22T01:23:01.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:01.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:01.198 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:01.198 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:01.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.296/60.0
2026-01-22T01:23:03.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:04.201 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:04.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:23:04.202 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:04.202 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:23:05.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:06.836 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:23:06.855 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:22:21.186812
2026-01-22T01:23:06.855 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:22:21.186812
2026-01-22T01:23:06.855 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:23:06.855 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:23:06.855 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:23:06.855 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:23:06&start_after=2026-01-20T23:23:06&end_after=2026-01-21T23:23:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:23:06.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:23:06.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:23:06.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:23:06.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:23:06.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:23:07.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:23:07.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:23:07.048 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:23:07.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:23:07.050 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:23:07.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:23:07.053 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:23:07.053 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 11 configurations
2026-01-22T01:23:07.053 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13548
2026-01-22T01:23:07.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:23:07.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:23:07.053 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 29.94671
2026-01-22T01:23:07.054 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:23:07.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:07.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:23:07.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:07.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:07.939 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:09.056 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:23:09.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:23:09.071 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:23:09.071812    Obs time: 2026-01-21 23:23:37
2026-01-22T01:23:09.071 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:27.928188
2026-01-22T01:23:09.071 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  27
2026-01-22T01:23:09.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:23:09.978 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:10.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:10.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:10.225 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:10.225 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:12.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:13.228 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:13.244 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:13.244 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:13.244 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:14.040 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:16.063 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:16.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:23:16.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:16.264 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:16.264 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:16.264 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:18.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:19.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:19.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:19.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:19.291 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:20.125 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:22.164 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:22.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:22.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:23:22.294 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:22.294 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:23:24.187 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:23:25.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:25.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:23:25.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:25.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:25.459 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:23:25.459 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:23:25.461 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:23:26.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:23:28.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:23:28.301 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T01:23:28.301 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T01:23:28.301 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:23:28.301 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:23:28.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:23:28.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:23:28.301 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:23:28.301 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:23:28.301 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:23:28.301 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:23:28.311 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:23:28.312 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:23:28.312 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T01:23:28.312 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T01:23:28.312 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T01:23:28.357 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T01:23:29.377 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T01:23:30.398 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T01:23:31.419 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T01:23:32.483 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T01:23:33.532 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:23:33.573 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T01:23:34.574 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:23:34.576 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.21
2026-01-22T01:23:34.576 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:22:54
2026-01-22T01:23:34.576 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:22:54
2026-01-22T01:23:34.576 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T01:23:34.576 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09254240157480313
2026-01-22T01:23:34.579 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T01:23:34.579 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:23:34.579 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:23:34.579 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:23:34.626 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T01:23:35.627 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:23:35.627 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:23:35.627 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:23:36.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:23:36.664 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:23:38.666 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:23:38.666 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:23:38.666 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:23:38.666 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:23:38.666 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:23:38.668 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:23:38.668 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:23:38.670 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:23:38.770 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:23:38.770 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:23:38.772 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769037818.7722082
2026-01-22T01:23:39.167 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:23:39.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:23:39.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:39.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:23:39.686 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:39.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:42.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:42.708 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:42.708 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:42.708 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:44.255 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.552/60.0
2026-01-22T01:23:45.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:45.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:45.730 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:45.730 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:46.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:23:46.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.517/60.0
2026-01-22T01:23:48.317 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.48/60.0
2026-01-22T01:23:48.733 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:48.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:48.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:48.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:50.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.456/60.0
2026-01-22T01:23:51.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:51.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:51.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:51.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:52.379 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.416/60.0
2026-01-22T01:23:54.418 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.393/60.0
2026-01-22T01:23:54.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:54.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:54.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:54.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:56.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:23:56.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.354/60.0
2026-01-22T01:23:57.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:23:57.785 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:23:57.785 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:23:57.785 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:23:58.480 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.333/60.0
2026-01-22T01:24:00.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.292/60.0
2026-01-22T01:24:00.788 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:00.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:00.804 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:00.804 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:02.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.269/60.0
2026-01-22T01:24:03.807 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:03.827 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:03.827 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:03.827 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:04.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.23/60.0
2026-01-22T01:24:06.125 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:24:06.126 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:23:21.385932
2026-01-22T01:24:06.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:23:21.385932
2026-01-22T01:24:06.126 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:24:06.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:24:06.126 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:24:06.126 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:24:06&start_after=2026-01-20T23:24:06&end_after=2026-01-21T23:24:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:24:06.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:24:06.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:24:06.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:24:06.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:24:06.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:24:06.239 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:24:06.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:24:06.242 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:24:06.242 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:24:06.244 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:24:06.245 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:24:06.245 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:24:06.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:24:06.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:24:06.245 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -29.245255
2026-01-22T01:24:06.246 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:24:06.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.207/60.0
2026-01-22T01:24:06.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:06.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:06.831 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:06.831 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:08.247 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:24:08.247 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:24:08.247 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:24:08.247925    Obs time: 2026-01-21 23:23:37
2026-01-22T01:24:08.247 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:28.752075
2026-01-22T01:24:08.248 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86368
2026-01-22T01:24:08.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:23:37Z', 'guide_off', 'config_id 13544', 'config_status_id 17513387', 'update_OCS 17513387 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234634_13498_13544.json', 'run_script ATLAS26ayq_17234634_13498_13544.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513387 COMPLETED 13544 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:45:00Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T01:24:08.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T01:24:08.627 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.184/60.0
2026-01-22T01:24:09.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:09.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:09.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:09.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:10.650 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.145/60.0
2026-01-22T01:24:12.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.122/60.0
2026-01-22T01:24:12.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:12.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:12.859 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:12.859 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:14.712 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.083/60.0
2026-01-22T01:24:15.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:24:15.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:15.880 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:15.880 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:15.880 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:16.751 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.061/60.0
2026-01-22T01:24:18.774 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.021/60.0
2026-01-22T01:24:18.883 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:18.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:18.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:18.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:20.813 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.999/60.0
2026-01-22T01:24:21.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:21.924 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:21.924 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:21.924 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:22.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.96/60.0
2026-01-22T01:24:24.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.936/60.0
2026-01-22T01:24:24.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:24.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:24.925 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:24.925 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:25.261 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:24:26.898 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.896/60.0
2026-01-22T01:24:27.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:27.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:27.949 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:27.949 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:28.937 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.873/60.0
2026-01-22T01:24:30.949 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:30.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:24:30.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:30.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:24:30.960 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.834/60.0
2026-01-22T01:24:32.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.811/60.0
2026-01-22T01:24:33.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:33.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:24:33.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:33.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:35.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.788/60.0
2026-01-22T01:24:35.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:24:36.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:36.993 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:36.993 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:36.993 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:37.046 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.749/60.0
2026-01-22T01:24:39.085 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:39.996 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:40.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:24:40.013 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:40.013 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:24:41.108 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:43.016 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:43.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:24:43.017 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:43.017 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:24:43.147 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:45.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:45.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:24:46.020 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:46.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:24:46.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:46.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:47.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:49.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:49.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:49.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:49.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:49.232 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:51.271 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:52.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:52.068 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:52.068 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:52.068 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:53.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:55.071 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:55.088 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:55.088 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:55.088 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:55.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:24:55.333 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:57.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:24:58.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:24:58.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:24:58.110 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:24:58.110 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:24:59.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:25:01.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:25:01.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:25:01.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:25:01.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:25:01.201 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:25:01.201 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:25:01.203 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:25:04.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:25:04.117 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T01:25:04.117 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T01:25:04.117 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:25:04.117 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:25:04.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:25:04.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:25:04.117 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:25:04.117 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:25:04.117 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:25:04.117 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:25:04.130 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:25:04.132 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:25:04.132 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T01:25:04.132 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:25:04.132 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:25:04.355 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T01:25:05.299 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:25:05.300 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:24:21.585001
2026-01-22T01:25:05.300 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:24:21.585001
2026-01-22T01:25:05.300 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:25:05.300 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:25:05.300 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:25:05.300 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:25:05&start_after=2026-01-20T23:25:05&end_after=2026-01-21T23:25:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:25:05.374 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T01:25:05.417 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:25:05.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:25:05.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:25:05.420 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:25:05.421 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:25:05.422 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:25:05.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:25:05.425 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:25:05.426 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:25:05.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:25:05.428 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:25:05.428 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:25:05.429 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:25:05.429 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:25:05.429 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -88.429139
2026-01-22T01:25:05.429 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:25:06.394 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T01:25:07.415 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T01:25:07.432 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:25:07.432 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:25:07.432 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:25:07.432862    Obs time: 2026-01-21 23:23:37
2026-01-22T01:25:07.432 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:58:29.567138
2026-01-22T01:25:07.432 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86309
2026-01-22T01:25:07.432 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:23:37Z', 'guide_off', 'config_id 13544', 'config_status_id 17513405', 'update_OCS 17513405 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234652_13498_13544.json', 'run_script ATLAS26ayq_17234652_13498_13544.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513405 COMPLETED 13544 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:45:00Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T01:25:07.433 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T01:25:08.435 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T01:25:09.456 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T01:25:10.477 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 7
2026-01-22T01:25:11.545 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:25:12.546 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T01:25:12.546 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T01:25:12.546 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:25:12.546 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:25:12.560 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:25:13.562 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:25:13.614 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:25:14.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:25:14.615 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:25:14.616 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.16
2026-01-22T01:25:14.617 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:24:30
2026-01-22T01:25:14.617 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:24:30
2026-01-22T01:25:14.617 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:25:14.617 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09226519685039368
2026-01-22T01:25:14.620 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T01:25:14.620 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T01:25:14.620 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T01:25:15.659 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:25:17.679 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T01:25:17.679 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:25:17.679 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:25:17.679 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:25:17.679 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:25:17.681 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:25:17.681 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:25:17.683 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:25:17.804 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:25:17.804 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:25:17.806 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769037917.806546
2026-01-22T01:25:18.180 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:25:18.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:25:18.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:25:18.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:25:18.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:25:18.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:25:21.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:25:21.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:25:21.722 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:25:21.722 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:25:23.256 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234269_13502_13548.json , Iteration 1/1, Unit 5/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T01:25:24.069 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:25:24.069 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:25:24.089 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:25:24.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:25:24.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:25:25.259 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T01:25:25.259 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:25:25.259 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:25:25.762 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:25:25.762 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script ATLAS26ayq_17234269_13502_13548.json was run successfully
2026-01-22T01:25:25.762 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T01:25:25.762 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T01:25:25.762 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T01:25:25.763 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T01:25:25.763 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T01:25:25.763 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:25:25.763 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:25:26.263 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:25:26.263 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T01:25:26.263 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:25:26.263 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:25:26.263 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:25:26.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:25:26.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:25:26.263 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:25:26.264 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T01:25:26.266 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:34.02336   Targ dec = -32:04:27.372
2026-01-22T01:25:26.266 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:25:26.266 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:25:26.266 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:25:26.273 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:25:26.273 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:25:26.273 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:25:26.273 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:25:27.316 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:25:29.318 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:25:29.318 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:25:29.318 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:25:29.767 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:25:29.767 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T01:25:29.767 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17513022 COMPLETED 13548 reason
2026-01-22T01:25:29.767 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17513022 COMPLETED 13548 reason
2026-01-22T01:25:29.767 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:25:29.767 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:25:29.767 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:25:29.767 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:25:29.767 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:25:29.767 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:25:32.770 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:25:32.771 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:25:34.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:25:34.773 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:25:34.773 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:25:34.773 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T01:25:34.773 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T01:25:34.773 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T01:25:34.775 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T01:25:34.775 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T23:23:37Z
2026-01-22T01:25:34.775 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T01:25:34.775 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T01:25:34.775 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T01:25:34.775 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T01:25:34.775 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T01:25:34.775 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:25:34.775 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:25:35.276 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:25:35.276 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T01:25:35.276 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:25:35.276 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:25:35.276 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:25:35.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:25:35.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:25:35.276 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:25:35.276 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T01:25:35.278 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:34.01904   Targ dec = -32:04:28.2216
2026-01-22T01:25:35.278 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:25:35.278 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:25:35.278 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:25:35.285 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:25:35.285 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:25:35.285 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:25:35.285 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:25:36.340 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:25:38.342 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:25:38.342 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:25:38.342 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:25:38.779 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:25:38.779 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T01:25:38.780 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T01:25:38.780 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T01:25:38.780 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T01:25:38.780 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17513022
2026-01-22T01:25:38.780 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T01:25:38.780 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T01:25:38.780 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T23:02:25', 'end': '2026-01-21T23:25:38', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1393.0', 'events': {}}} with config status ID 17513022
2026-01-22T01:25:38.941 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T01:25:38.941 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:02:14Z', 'guide_off', 'config_id 13548', 'config_status_id 17513022', 'update_OCS 17513022 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234269_13502_13548.json', 'run_script ATLAS26ayq_17234269_13502_13548.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513022 COMPLETED 13548 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:23:37Z', 'run_script arc_flat_lamp_off.json'] at time 01:25:38
2026-01-22T01:25:44.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:25:54.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:26:04.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:26:04.511 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:25:21.789236
2026-01-22T01:26:04.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:25:21.789236
2026-01-22T01:26:04.511 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:26:04.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:26:04.511 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:26:04.511 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:26:04&start_after=2026-01-20T23:26:04&end_after=2026-01-21T23:26:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:26:04.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:26:04.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:26:04.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:26:04.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:26:04.644 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:26:04.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:26:04.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:26:04.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:26:04.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:26:04.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:26:04.651 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:26:04.651 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:26:04.651 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:26:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:26:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -147.652051
2026-01-22T01:26:04.653 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:26:06.655 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:26:06.675 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:26:06.675 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:26:06.675180    Obs time: 2026-01-21 23:23:37
2026-01-22T01:26:06.675 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:57:30.324820
2026-01-22T01:26:06.675 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86250
2026-01-22T01:26:06.675 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:23:37Z', 'guide_off', 'config_id 13544', 'config_status_id 17513423', 'update_OCS 17513423 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234670_13498_13544.json', 'run_script ATLAS26ayq_17234670_13498_13544.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513423 COMPLETED 13544 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:45:00Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T01:26:06.675 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T01:26:06.675 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T01:26:06.675 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T01:26:06.675 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T01:26:06.675 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T01:26:06.675 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:26:06.676 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:26:06.676 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:26:06.676 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:26:06.676 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:26:09.679 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:26:09.679 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:26:11.682 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:26:11.682 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:26:11.682 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T23:23:37Z
2026-01-22T01:26:11.682 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T23:23:37Z
2026-01-22T01:26:11.682 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:26:11.682 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:26:11.682 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:26:11.682 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:26:11.682 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:26:11.682 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:26:13.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:26:14.685 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:26:14.686 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:26:16.698 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:26:16.698 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:26:16.698 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13544
2026-01-22T01:26:16.698 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13544
2026-01-22T01:26:16.698 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17513423
2026-01-22T01:26:16.699 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17513423
2026-01-22T01:26:16.699 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17513423 ATTEMPTED
2026-01-22T01:26:16.699 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17513423 ATTEMPTED
2026-01-22T01:26:16.699 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:26:16.699 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:26:16.699 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:26:16.699 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:26:16.700 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 9.45647, 'targ_dec': -32.0086, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_ATLAS26ayq_17234670_13498_13544.json'}
2026-01-22T01:26:16.700 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:26:16.701 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:26:16.701 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T01:26:16.701 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17513423
2026-01-22T01:26:16.701 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T01:26:16.701 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T01:26:16.701 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17513423
2026-01-22T01:26:16.770 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T01:26:17.201 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:26:17.201 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_ATLAS26ayq_17234670_13498_13544.json 1 times
2026-01-22T01:26:17.201 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:26:17.205 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T01:26:17.205 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T01:26:17.205 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T01:26:20.232 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:21.253 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:22.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:23.301 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:23.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:26:24.323 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:25.346 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:26.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:27.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:28.376 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:26:29.400 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T01:26:29.402 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  9.45688186258866 is close enough to target ra = 9.45647
2026-01-22T01:26:29.402 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -32.0073424899394 is close enough to target dec = -32.0086
2026-01-22T01:26:29.402 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T01:26:29.403 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:26:29.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:26:29.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:26:29.403 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:26:29.404 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T01:26:29.404 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T01:26:29.424 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:26:29.424 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:26:29.493 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:26:30.495 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:26:30.495 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:26:30.583 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:26:31.585 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:26:31.637 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:26:32.639 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:26:32.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.01
2026-01-22T01:26:32.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:26:07
2026-01-22T01:26:32.643 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:26:07
2026-01-22T01:26:32.643 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:26:32.643 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09235614173228344
2026-01-22T01:26:32.647 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T01:26:32.647 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T01:26:32.648 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T01:26:32.662 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:26:32.663 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:26:32.727 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:26:33.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:26:33.729 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:26:33.729 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:26:33.780 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:26:34.782 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:26:34.833 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:26:35.835 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:26:35.837 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.01
2026-01-22T01:26:35.837 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:26:07
2026-01-22T01:26:35.838 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:26:07
2026-01-22T01:26:35.838 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:26:35.838 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09235614173228344
2026-01-22T01:26:40.901 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T01:26:40.901 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:26:40.901 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:26:40.901 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:26:40.902 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:26:40.902 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:26:40.905 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:26:40.906 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:26:40.928 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:26:41.054 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:26:41.055 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:26:41.058 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038001.0582237
2026-01-22T01:26:43.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:26:46.332 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:26:46.332 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:26:46.338 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:26:46.419 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T01:26:50.424 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T01:26:50.424 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T01:26:53.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:27:00.483 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T01:27:00.483 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T01:27:00.483 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-22T01:27:00.483 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-22T01:27:00.483 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T01:27:00.503 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T01:27:00.503 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.632904
2026-01-22T01:27:00.503 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T01:27:00.503 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:26.851, -32:00:35.724).
2026-01-22T01:27:00.503 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 26.851  -32 00 35.724 .
2026-01-22T01:27:00.503 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 26.851  -32 00 35.724 .
2026-01-22T01:27:00.503 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510702.765
2026-01-22T01:27:00.503 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115235.724
2026-01-22T01:27:00.715 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T01:27:03.752 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:27:03.771 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:26:21.988210
2026-01-22T01:27:03.771 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:26:21.988210
2026-01-22T01:27:03.772 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:27:03.772 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:27:03.772 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:27:03.773 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:27:03&start_after=2026-01-20T23:27:03&end_after=2026-01-21T23:27:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:27:03.890 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:27:03.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:27:03.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:27:03.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:27:03.904 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:27:03.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:27:03.911 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:27:03.916 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:27:03.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:27:03.922 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:27:03.924 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:27:03.925 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:27:03.925 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:27:03.925 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:27:03.925 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:27:03.925 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2706.074604
2026-01-22T01:27:03.925 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:27:05.742 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T01:27:05.742 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:27:05.742 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:27:05.742 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:27:05.743 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:27:05.743 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:27:05.746 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:27:05.747 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:27:05.752 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:27:05.872 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:27:05.872 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:27:05.875 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038025.8757172
2026-01-22T01:27:07.245 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:27:10.145 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:27:10.145 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:27:10.163 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:27:10.256 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T01:27:12.934 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:27:14.261 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T01:27:22.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:27:24.312 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T01:27:24.312 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T01:27:24.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-22T01:27:24.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-22T01:27:24.312 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T01:27:24.332 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T01:27:24.332 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.607526
2026-01-22T01:27:24.332 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T01:27:24.332 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:27.957, -31:57:49.912).
2026-01-22T01:27:24.332 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 27.957  -31 57 49.912 .
2026-01-22T01:27:24.332 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 27.957  -31 57 49.912 .
2026-01-22T01:27:24.332 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510719.35500000004
2026-01-22T01:27:24.332 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115069.912
2026-01-22T01:27:24.544 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T01:27:29.567 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T01:27:29.567 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:27:29.567 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:27:29.567 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:27:29.567 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:27:29.567 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:27:29.569 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:27:29.569 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:27:29.571 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:27:29.670 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:27:29.670 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:27:29.672 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038049.6725557
2026-01-22T01:27:31.069 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:27:32.954 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:27:33.932 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:27:33.932 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:27:33.949 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:27:34.074 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T01:27:40.100 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:27:40.100 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:27:40.100 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:27:40.100 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:27:40.100 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:27:40.102 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:27:40.102 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:27:40.104 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:27:40.274 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:27:40.275 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:27:40.276 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038060.2766597
2026-01-22T01:27:41.602 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:27:42.964 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:27:44.537 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:27:44.537 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:27:44.549 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:27:44.608 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T01:27:52.308 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9 to host 127.0.0.1 on port 12360
2026-01-22T01:27:52.308 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:27:52.308 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:27:53.015 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:27:55.311 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9
2026-01-22T01:27:55.311 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2016  11836  13.9
2026-01-22T01:27:57.313 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:28:03.025 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:28:03.025 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:27:22.187268
2026-01-22T01:28:03.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:27:22.187268
2026-01-22T01:28:03.026 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:28:03.026 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:28:03.026 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:28:03.026 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:28:03&start_after=2026-01-20T23:28:03&end_after=2026-01-21T23:28:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:28:03.142 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:28:03.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:28:03.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:28:03.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:28:03.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:28:03.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:28:03.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:28:03.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:28:03.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:28:03.152 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:28:03.153 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:28:03.153 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:28:03.153 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:28:03.153 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:28:03.153 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:28:03.153 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2646.846172
2026-01-22T01:28:03.153 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:28:12.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:28:22.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:28:32.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:28:36.345 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T01:28:36.345 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:28:36.345 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:28:39.348 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T01:28:39.348 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T01:28:41.350 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:28:41.361 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:28:41.361 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:28:41.361 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:28:41.361 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:28:41.361 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:28:41.361 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:28:41.361 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:28:42.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:28:42.389 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:28:44.391 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:28:44.391 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:28:44.391 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:28:44.967 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:28:44.967 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_ATLAS26ayq_17234670_13498_13544.json was run successfully
2026-01-22T01:28:44.967 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:28:44.967 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:28:44.967 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:28:44.967 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script ATLAS26ayq_17234670_13498_13544.json
2026-01-22T01:28:44.967 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 600000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'ATLAS26ayq_17234670_13498_13544.json'}
2026-01-22T01:28:44.968 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:28:44.968 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:28:45.468 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:28:45.468 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script ATLAS26ayq_17234670_13498_13544.json 1 times
2026-01-22T01:28:45.468 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T01:28:45.468 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:28:45.468 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:28:45.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:28:45.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:28:45.468 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:28:45.469 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:28:45.469 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:28:45.469 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:28:45.483 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:28:45.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:28:45.484 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T01:28:45.484 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:28:45.484 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:28:45.534 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:28:46.535 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T01:28:46.555 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T01:28:46.555 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:28:46.555 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:28:46.587 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:28:47.588 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:28:47.640 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:28:48.641 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:28:48.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.03
2026-01-22T01:28:48.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:28:15
2026-01-22T01:28:48.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:28:15
2026-01-22T01:28:48.642 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:28:48.642 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09234401574803147
2026-01-22T01:28:48.645 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T01:28:48.645 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:28:48.645 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:28:49.684 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:28:51.704 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:28:51.704 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:28:51.704 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:28:51.704 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:28:51.704 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:28:51.706 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:28:51.706 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:28:51.708 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:28:51.829 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:28:51.829 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:28:51.831 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038131.8310592
2026-01-22T01:28:52.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:28:52.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:28:52.205 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:28:52.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:28:52.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:28:52.729 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:28:52.729 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:28:55.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:28:55.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:28:55.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:28:55.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:28:57.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 594.591/600.0
2026-01-22T01:28:58.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:28:58.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:28:58.757 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:28:58.757 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:28:59.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 592.552/600.0
2026-01-22T01:29:01.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 590.521/600.0
2026-01-22T01:29:01.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:01.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:01.775 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:01.775 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:02.211 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:29:02.212 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:28:22.384810
2026-01-22T01:29:02.212 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:28:22.384810
2026-01-22T01:29:02.212 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:29:02.212 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:29:02.212 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:29:02.212 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:29:02&start_after=2026-01-20T23:29:02&end_after=2026-01-21T23:29:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:29:02.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:29:02.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:29:02.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:29:02.333 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:29:02.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:29:02.335 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:29:02.337 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:29:02.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:29:02.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:29:02.340 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:29:02.341 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:29:02.341 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:29:02.341 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:29:02.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:29:02.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:29:02.341 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2587.658053
2026-01-22T01:29:02.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:29:03.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 588.491/600.0
2026-01-22T01:29:04.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:04.796 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:04.796 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:04.796 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:05.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.461/600.0
2026-01-22T01:29:07.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.429/600.0
2026-01-22T01:29:07.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:07.814 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:07.814 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:07.814 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:09.462 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.401/600.0
2026-01-22T01:29:10.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:10.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:10.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:10.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:11.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:29:11.493 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.369/600.0
2026-01-22T01:29:13.523 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.338/600.0
2026-01-22T01:29:13.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:13.839 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:13.839 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:13.839 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:15.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 576.308/600.0
2026-01-22T01:29:16.842 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:16.860 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:29:16.860 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:16.860 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:29:17.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 574.278/600.0
2026-01-22T01:29:19.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 572.247/600.0
2026-01-22T01:29:19.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:19.884 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:29:19.884 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:19.884 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:21.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:29:21.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 570.216/600.0
2026-01-22T01:29:22.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:22.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:22.904 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:22.904 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:23.675 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 568.187/600.0
2026-01-22T01:29:25.706 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 566.156/600.0
2026-01-22T01:29:25.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:25.906 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:25.906 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:25.906 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:27.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 564.125/600.0
2026-01-22T01:29:28.909 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:28.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:28.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:28.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:29.767 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 562.095/600.0
2026-01-22T01:29:31.366 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:29:31.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 560.064/600.0
2026-01-22T01:29:31.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:31.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:31.934 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:31.934 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:33.827 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 558.036/600.0
2026-01-22T01:29:34.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:34.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:34.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:34.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:35.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 556.004/600.0
2026-01-22T01:29:37.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 553.973/600.0
2026-01-22T01:29:37.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:37.958 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:37.958 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:37.958 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:39.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 551.942/600.0
2026-01-22T01:29:40.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:40.983 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:29:40.983 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:40.983 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:41.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:29:41.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.912/600.0
2026-01-22T01:29:43.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.882/600.0
2026-01-22T01:29:43.986 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:44.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:29:44.003 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:44.003 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:29:46.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.851/600.0
2026-01-22T01:29:47.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:47.006 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:29:47.006 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:47.006 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:29:48.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.821/600.0
2026-01-22T01:29:50.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:50.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-22T01:29:50.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:50.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:29:50.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.79/600.0
2026-01-22T01:29:51.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:29:52.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 539.76/600.0
2026-01-22T01:29:53.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:53.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.00100000000003
2026-01-22T01:29:53.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:53.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:29:54.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 537.729/600.0
2026-01-22T01:29:56.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:56.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99899999999997
2026-01-22T01:29:56.050 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:56.050 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:29:56.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 535.699/600.0
2026-01-22T01:29:58.193 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 533.668/600.0
2026-01-22T01:29:59.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:29:59.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:29:59.054 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:29:59.054 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:00.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 531.638/600.0
2026-01-22T01:30:01.391 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:30:01.392 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:29:22.583648
2026-01-22T01:30:01.392 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:29:22.583648
2026-01-22T01:30:01.392 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:30:01.392 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:30:01.392 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:30:01.392 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:30:01&start_after=2026-01-20T23:30:01&end_after=2026-01-21T23:30:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:30:01.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:30:01.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:30:01.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:30:01.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:30:01.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:30:01.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:30:01.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:30:01.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:30:01.508 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:30:01.509 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:30:01.510 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:30:01.510 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:30:01.510 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:30:01.510 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:30:01.510 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:30:01.510 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2528.489221
2026-01-22T01:30:01.510 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:30:02.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:02.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:30:02.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:02.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:30:02.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 529.608/600.0
2026-01-22T01:30:04.284 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 527.579/600.0
2026-01-22T01:30:05.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:05.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99900000000002
2026-01-22T01:30:05.081 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:05.081 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:30:06.314 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 525.548/600.0
2026-01-22T01:30:08.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:08.100 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:30:08.100 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:08.100 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:08.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 523.518/600.0
2026-01-22T01:30:10.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 521.488/600.0
2026-01-22T01:30:10.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:30:11.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:11.104 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:11.104 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:11.104 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:12.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 519.456/600.0
2026-01-22T01:30:14.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:14.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:14.125 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:14.125 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:14.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 517.425/600.0
2026-01-22T01:30:16.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 515.395/600.0
2026-01-22T01:30:17.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:17.148 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:17.148 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:17.148 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:18.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 513.364/600.0
2026-01-22T01:30:20.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:20.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:20.150 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:20.150 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:20.527 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:30:20.527 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 511.334/600.0
2026-01-22T01:30:22.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 509.304/600.0
2026-01-22T01:30:23.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:23.170 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:30:23.170 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:23.170 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:30:24.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 507.273/600.0
2026-01-22T01:30:26.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:26.174 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:30:26.174 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:26.174 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:26.619 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 505.244/600.0
2026-01-22T01:30:28.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 503.212/600.0
2026-01-22T01:30:29.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:29.195 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:29.195 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:29.195 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:30.535 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:30:30.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 501.144/600.0
2026-01-22T01:30:32.198 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:32.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:30:32.216 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:32.216 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:30:32.824 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 499.076/600.0
2026-01-22T01:30:34.854 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 497.007/600.0
2026-01-22T01:30:35.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:35.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-22T01:30:35.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:35.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:30:36.885 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 494.977/600.0
2026-01-22T01:30:38.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:38.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:30:38.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:38.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:38.953 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 492.946/600.0
2026-01-22T01:30:40.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:30:41.021 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 490.878/600.0
2026-01-22T01:30:41.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:41.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:41.245 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:41.245 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:43.090 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 488.811/600.0
2026-01-22T01:30:44.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:44.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:44.249 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:44.249 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:45.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 486.741/600.0
2026-01-22T01:30:47.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 484.673/600.0
2026-01-22T01:30:47.252 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:47.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:30:47.269 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:47.269 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:49.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 482.605/600.0
2026-01-22T01:30:50.271 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:50.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:30:50.288 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:50.288 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:30:50.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:30:51.363 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 480.537/600.0
2026-01-22T01:30:53.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:53.315 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:30:53.315 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:53.315 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:30:53.431 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 478.468/600.0
2026-01-22T01:30:55.499 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 476.4/600.0
2026-01-22T01:30:56.318 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:56.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:30:56.319 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:56.319 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:30:57.567 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 474.332/600.0
2026-01-22T01:30:59.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:30:59.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:30:59.344 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:30:59.344 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:30:59.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 472.264/600.0
2026-01-22T01:31:00.562 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:31:00.578 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:30:22.780761
2026-01-22T01:31:00.578 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:30:22.780761
2026-01-22T01:31:00.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:31:00.578 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:31:00.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:31:00.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:31:00&start_after=2026-01-20T23:31:00&end_after=2026-01-21T23:31:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:31:00.703 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:00.704 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:00.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:00.706 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:00.707 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:00.707 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:00.709 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:00.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:00.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:00.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:00.713 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:31:00.713 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:31:00.713 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:31:00.713 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:31:00.713 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:31:00.713 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2469.286094
2026-01-22T01:31:00.713 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:31:01.704 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 470.196/600.0
2026-01-22T01:31:02.347 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:02.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:02.348 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:02.348 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:03.772 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 468.128/600.0
2026-01-22T01:31:05.351 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:05.368 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:05.368 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:05.368 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:05.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 466.06/600.0
2026-01-22T01:31:07.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 463.992/600.0
2026-01-22T01:31:08.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:08.385 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:08.385 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:08.385 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:09.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:31:09.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 461.924/600.0
2026-01-22T01:31:11.388 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:11.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:11.409 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:11.409 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:12.045 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 459.854/600.0
2026-01-22T01:31:14.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 457.786/600.0
2026-01-22T01:31:14.412 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:14.412 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:14.412 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:14.413 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:16.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 455.718/600.0
2026-01-22T01:31:17.416 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:17.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:31:17.433 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:17.433 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:31:18.249 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 453.65/600.0
2026-01-22T01:31:19.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:31:20.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 451.583/600.0
2026-01-22T01:31:20.436 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:20.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:31:20.437 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:20.437 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:22.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 449.513/600.0
2026-01-22T01:31:23.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:23.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:31:23.458 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:23.458 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:31:24.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 447.408/600.0
2026-01-22T01:31:26.461 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:26.462 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:31:26.462 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:26.462 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:31:26.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 445.377/600.0
2026-01-22T01:31:28.590 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 443.309/600.0
2026-01-22T01:31:29.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:29.483 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:31:29.483 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:29.483 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:31:29.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:31:30.659 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 441.242/600.0
2026-01-22T01:31:32.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:32.487 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:31:32.487 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:32.487 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:32.727 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 439.173/600.0
2026-01-22T01:31:34.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 437.104/600.0
2026-01-22T01:31:35.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:35.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:31:35.504 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:35.504 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:31:36.863 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 435.036/600.0
2026-01-22T01:31:38.507 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:38.508 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:31:38.508 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:38.508 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:38.931 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 432.968/600.0
2026-01-22T01:31:39.749 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:31:41.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 430.9/600.0
2026-01-22T01:31:41.511 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:41.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:41.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:41.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:43.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 428.832/600.0
2026-01-22T01:31:44.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:44.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:44.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:44.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:45.136 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 426.764/600.0
2026-01-22T01:31:47.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 424.696/600.0
2026-01-22T01:31:47.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:47.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:47.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:47.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:49.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 422.628/600.0
2026-01-22T01:31:49.759 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:31:50.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:50.582 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:31:50.582 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:50.582 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:51.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 420.558/600.0
2026-01-22T01:31:53.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 418.492/600.0
2026-01-22T01:31:53.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:53.604 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:31:53.604 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:53.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:31:55.477 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 416.422/600.0
2026-01-22T01:31:56.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:56.606 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:31:56.606 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:56.606 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:31:57.545 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 414.354/600.0
2026-01-22T01:31:59.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:31:59.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 412.287/600.0
2026-01-22T01:31:59.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:31:59.627 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:31:59.627 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:31:59.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:31:59.769 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:31:22.982957
2026-01-22T01:31:59.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:31:22.982957
2026-01-22T01:31:59.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:31:59.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:31:59.769 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:31:59.769 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:31:59&start_after=2026-01-20T23:31:59&end_after=2026-01-21T23:31:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:31:59.879 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:59.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:59.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:59.882 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:59.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:59.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:59.886 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:59.887 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:59.888 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:31:59.889 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:31:59.890 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:31:59.890 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:31:59.890 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:31:59.890 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:31:59.890 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:31:59.890 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2410.10928
2026-01-22T01:31:59.890 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:32:01.682 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 410.217/600.0
2026-01-22T01:32:02.630 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:02.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:32:02.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:02.647 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:32:03.750 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 408.149/600.0
2026-01-22T01:32:05.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:05.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:32:05.668 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:05.668 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:32:05.818 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 406.081/600.0
2026-01-22T01:32:07.887 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 404.013/600.0
2026-01-22T01:32:08.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:08.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:32:08.672 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:08.672 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:08.899 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:32:09.955 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 401.944/600.0
2026-01-22T01:32:11.675 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:11.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:11.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:11.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:12.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 399.876/600.0
2026-01-22T01:32:14.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 397.808/600.0
2026-01-22T01:32:14.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:14.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:14.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:14.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:16.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 395.74/600.0
2026-01-22T01:32:17.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:17.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:17.722 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:17.722 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:18.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 393.672/600.0
2026-01-22T01:32:18.908 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:32:20.296 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 391.604/600.0
2026-01-22T01:32:20.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:20.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:20.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:20.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:22.364 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 389.536/600.0
2026-01-22T01:32:23.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:23.767 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:23.767 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:23.767 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:24.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 387.468/600.0
2026-01-22T01:32:26.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 385.4/600.0
2026-01-22T01:32:26.770 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:26.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:32:26.771 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:26.771 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:32:28.569 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 383.33/600.0
2026-01-22T01:32:28.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:32:29.774 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:29.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:32:29.797 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:29.797 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:30.599 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 381.262/600.0
2026-01-22T01:32:32.630 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 379.232/600.0
2026-01-22T01:32:32.800 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:32.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:32:32.801 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:32.801 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:32:34.698 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 377.201/600.0
2026-01-22T01:32:35.804 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:35.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:32:35.822 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:35.823 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:36.766 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 375.133/600.0
2026-01-22T01:32:38.797 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.065/600.0
2026-01-22T01:32:38.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:38.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:38.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:38.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:38.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:32:40.828 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.034/600.0
2026-01-22T01:32:41.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:41.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:41.857 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:41.857 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:42.858 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 369.003/600.0
2026-01-22T01:32:44.858 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:44.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:32:44.861 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:44.861 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:32:44.889 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 366.972/600.0
2026-01-22T01:32:46.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 364.942/600.0
2026-01-22T01:32:47.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:47.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:32:47.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:47.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:48.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:32:48.950 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 362.912/600.0
2026-01-22T01:32:50.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:50.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:50.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:50.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:50.980 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 360.881/600.0
2026-01-22T01:32:53.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 358.852/600.0
2026-01-22T01:32:53.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:53.903 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:32:53.903 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:53.903 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:32:55.041 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 356.821/600.0
2026-01-22T01:32:56.905 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:56.926 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:32:56.926 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:56.926 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:32:57.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 354.79/600.0
2026-01-22T01:32:58.947 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:32:58.948 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:32:23.183689
2026-01-22T01:32:58.948 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:32:23.183689
2026-01-22T01:32:58.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:32:58.948 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:32:58.948 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:32:58.948 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:32:58&start_after=2026-01-20T23:32:58&end_after=2026-01-21T23:32:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:32:59.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:32:59.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:32:59.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:32:59.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:32:59.061 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:32:59.062 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:32:59.063 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:32:59.064 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:32:59.065 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:32:59.067 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:32:59.067 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:32:59.067 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:32:59.067 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:32:59.068 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:32:59.068 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:32:59.068 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2350.931919
2026-01-22T01:32:59.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:32:59.102 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 352.76/600.0
2026-01-22T01:32:59.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:32:59.946 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:32:59.946 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:32:59.946 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:01.132 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 350.729/600.0
2026-01-22T01:33:02.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:02.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:33:02.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:02.951 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:33:03.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.7/600.0
2026-01-22T01:33:05.193 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.67/600.0
2026-01-22T01:33:05.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:05.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:33:05.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:05.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:33:07.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.638/600.0
2026-01-22T01:33:08.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:33:08.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:08.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:33:08.977 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:08.977 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:09.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.608/600.0
2026-01-22T01:33:11.284 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.577/600.0
2026-01-22T01:33:11.980 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:12.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:12.000 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:12.000 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:13.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.547/600.0
2026-01-22T01:33:15.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:15.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:15.021 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:15.021 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:15.345 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.516/600.0
2026-01-22T01:33:17.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.486/600.0
2026-01-22T01:33:18.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:18.043 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:18.043 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:18.043 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:18.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:33:19.406 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 332.456/600.0
2026-01-22T01:33:21.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:21.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:21.045 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:21.045 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:21.436 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 330.425/600.0
2026-01-22T01:33:23.467 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 328.395/600.0
2026-01-22T01:33:24.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:24.066 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:33:24.066 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:24.066 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:33:25.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 326.364/600.0
2026-01-22T01:33:27.069 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:27.091 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:33:27.091 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:27.091 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:33:27.527 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 324.334/600.0
2026-01-22T01:33:28.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:33:29.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 322.303/600.0
2026-01-22T01:33:30.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:30.114 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:33:30.114 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:30.114 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:31.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 320.273/600.0
2026-01-22T01:33:33.117 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:33.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:33.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:33.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:33.619 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 318.243/600.0
2026-01-22T01:33:35.649 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 316.212/600.0
2026-01-22T01:33:36.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:36.155 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:36.155 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:36.155 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:37.680 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 314.183/600.0
2026-01-22T01:33:38.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:33:39.158 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:39.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:39.159 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:39.159 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:39.710 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 312.151/600.0
2026-01-22T01:33:41.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 310.121/600.0
2026-01-22T01:33:42.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:42.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:42.177 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:42.177 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:43.771 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 308.091/600.0
2026-01-22T01:33:45.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:45.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:45.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:45.181 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:45.801 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 306.06/600.0
2026-01-22T01:33:47.832 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 304.03/600.0
2026-01-22T01:33:48.114 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:33:48.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:48.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:48.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:48.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:49.862 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.999/600.0
2026-01-22T01:33:51.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:51.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:33:51.234 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:51.234 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:51.893 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.969/600.0
2026-01-22T01:33:53.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.938/600.0
2026-01-22T01:33:54.237 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:54.260 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:33:54.260 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:54.260 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:33:55.953 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.908/600.0
2026-01-22T01:33:57.263 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:33:57.263 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:33:57.264 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:33:57.264 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:33:57.984 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.878/600.0
2026-01-22T01:33:58.124 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:33:58.141 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:33:23.384962
2026-01-22T01:33:58.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:33:23.384962
2026-01-22T01:33:58.141 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:33:58.141 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:33:58.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:33:58.141 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:33:58&start_after=2026-01-20T23:33:58&end_after=2026-01-21T23:33:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:33:58.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:33:58.273 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:33:58.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:33:58.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:33:58.276 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:33:58.277 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:33:58.278 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:33:58.279 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:33:58.280 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:33:58.282 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2291.717023
2026-01-22T01:33:58.283 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:34:00.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.848/600.0
2026-01-22T01:34:00.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:00.283 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:00.283 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:00.283 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:02.045 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.817/600.0
2026-01-22T01:34:03.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:03.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:03.285 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:03.285 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:04.075 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.786/600.0
2026-01-22T01:34:06.106 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 285.756/600.0
2026-01-22T01:34:06.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:06.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:06.309 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:06.309 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:07.292 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:34:08.136 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 283.725/600.0
2026-01-22T01:34:09.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:09.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:09.332 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:09.332 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:10.166 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 281.696/600.0
2026-01-22T01:34:12.197 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 279.665/600.0
2026-01-22T01:34:12.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:12.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:12.349 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:12.349 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:14.227 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 277.634/600.0
2026-01-22T01:34:15.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:15.353 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:15.353 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:15.353 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:16.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 275.604/600.0
2026-01-22T01:34:17.302 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:34:18.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 273.573/600.0
2026-01-22T01:34:18.356 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:18.372 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:18.372 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:18.372 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:20.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 271.543/600.0
2026-01-22T01:34:21.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:21.376 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-22T01:34:21.376 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:21.376 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:34:22.349 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 269.514/600.0
2026-01-22T01:34:24.379 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 267.484/600.0
2026-01-22T01:34:24.379 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:24.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:34:24.399 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:24.400 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:26.410 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 265.452/600.0
2026-01-22T01:34:27.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:34:27.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:27.422 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:34:27.422 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:27.422 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:34:28.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 263.421/600.0
2026-01-22T01:34:30.425 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:30.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:34:30.442 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:30.442 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:30.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 261.391/600.0
2026-01-22T01:34:32.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 259.36/600.0
2026-01-22T01:34:33.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:33.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:33.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:33.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:34.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 257.33/600.0
2026-01-22T01:34:36.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:36.468 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:34:36.468 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:36.468 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:34:36.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 255.3/600.0
2026-01-22T01:34:37.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:34:38.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 253.269/600.0
2026-01-22T01:34:39.471 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:39.472 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:34:39.472 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:39.472 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:40.623 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 251.239/600.0
2026-01-22T01:34:42.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:42.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:42.496 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:42.496 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:42.653 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 249.208/600.0
2026-01-22T01:34:44.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 247.178/600.0
2026-01-22T01:34:45.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:45.519 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:34:45.519 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:45.519 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:34:46.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 245.147/600.0
2026-01-22T01:34:47.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:34:48.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:48.536 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:34:48.536 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:48.536 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:48.745 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 243.117/600.0
2026-01-22T01:34:50.775 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 241.088/600.0
2026-01-22T01:34:51.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:51.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:51.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:51.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:52.805 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 239.056/600.0
2026-01-22T01:34:54.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:54.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:54.560 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:54.560 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:54.836 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 237.026/600.0
2026-01-22T01:34:56.866 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 234.995/600.0
2026-01-22T01:34:57.337 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:34:57.337 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:34:23.583868
2026-01-22T01:34:57.337 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:34:23.583868
2026-01-22T01:34:57.338 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:34:57.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:34:57.338 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:34:57.338 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:34:57&start_after=2026-01-20T23:34:57&end_after=2026-01-21T23:34:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:34:57.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:34:57.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:34:57.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:34:57.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:34:57.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:34:57.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:34:57.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:34:57.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:34:57.455 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:34:57.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:34:57.458 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:34:57.458 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:34:57.458 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:34:57.458 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:34:57.458 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:34:57.458 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2232.54154
2026-01-22T01:34:57.458 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:34:57.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:34:57.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:34:57.564 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:34:57.564 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:34:58.897 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 232.965/600.0
2026-01-22T01:35:00.568 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:00.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:00.587 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:00.587 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:00.928 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 230.934/600.0
2026-01-22T01:35:02.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 228.904/600.0
2026-01-22T01:35:03.591 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:03.609 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:03.609 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:03.609 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:05.026 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 226.873/600.0
2026-01-22T01:35:06.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:35:06.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:06.628 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:35:06.629 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:06.629 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:35:07.095 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 224.805/600.0
2026-01-22T01:35:09.125 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 222.736/600.0
2026-01-22T01:35:09.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:09.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:35:09.633 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:09.633 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:11.156 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 220.706/600.0
2026-01-22T01:35:12.636 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:12.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:12.652 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:12.652 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:13.186 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 218.676/600.0
2026-01-22T01:35:15.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 216.645/600.0
2026-01-22T01:35:15.655 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:15.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:15.656 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:15.656 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:16.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:35:17.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 214.614/600.0
2026-01-22T01:35:18.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:18.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:18.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:18.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:19.354 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 212.546/600.0
2026-01-22T01:35:21.422 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 210.477/600.0
2026-01-22T01:35:21.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:21.698 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:21.698 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:21.698 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:23.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 208.409/600.0
2026-01-22T01:35:24.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:24.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:24.721 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:24.721 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:25.558 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 206.341/600.0
2026-01-22T01:35:26.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:35:27.626 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 204.273/600.0
2026-01-22T01:35:27.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:27.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:27.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:27.725 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:29.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 202.205/600.0
2026-01-22T01:35:30.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:30.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:30.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:30.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:31.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 200.136/600.0
2026-01-22T01:35:33.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:33.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:33.746 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:33.746 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:33.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 198.068/600.0
2026-01-22T01:35:35.899 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 196.0/600.0
2026-01-22T01:35:36.490 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:35:36.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:36.750 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:35:36.750 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:36.750 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:35:37.968 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 193.932/600.0
2026-01-22T01:35:39.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:39.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.00000000000003
2026-01-22T01:35:39.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:39.772 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:35:40.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 191.863/600.0
2026-01-22T01:35:42.104 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 189.795/600.0
2026-01-22T01:35:42.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:42.795 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00099999999998
2026-01-22T01:35:42.795 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:42.795 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:35:44.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 187.727/600.0
2026-01-22T01:35:45.798 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:45.799 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:35:45.799 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:45.799 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:46.240 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 185.66/600.0
2026-01-22T01:35:46.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:35:48.309 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 183.592/600.0
2026-01-22T01:35:48.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:48.819 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:48.819 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:48.819 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:50.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 181.522/600.0
2026-01-22T01:35:51.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:51.823 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:35:51.823 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:51.823 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:35:52.407 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 179.454/600.0
2026-01-22T01:35:54.476 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 177.424/600.0
2026-01-22T01:35:54.826 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:54.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:35:54.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:54.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:35:56.506 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 175.356/600.0
2026-01-22T01:35:56.510 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:35:56.534 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:35:23.787652
2026-01-22T01:35:56.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:35:23.787652
2026-01-22T01:35:56.534 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:35:56.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:35:56.534 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:35:56.534 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:35:56&start_after=2026-01-20T23:35:56&end_after=2026-01-21T23:35:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:35:56.640 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:35:56.642 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:35:56.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:35:56.643 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:35:56.645 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:35:56.646 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:35:56.647 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:35:56.648 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:35:56.649 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:35:56.651 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:35:56.652 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:35:56.652 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:35:56.652 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:35:56.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:35:56.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:35:56.652 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2173.347772
2026-01-22T01:35:56.652 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:35:57.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:35:57.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T01:35:57.866 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:35:57.866 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:35:58.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 173.326/600.0
2026-01-22T01:36:00.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 171.257/600.0
2026-01-22T01:36:00.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:00.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:36:00.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:00.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:02.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 169.188/600.0
2026-01-22T01:36:03.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:03.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:03.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:03.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:04.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.12/600.0
2026-01-22T01:36:05.659 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:36:06.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.052/600.0
2026-01-22T01:36:06.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:06.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:36:06.914 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:06.914 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:36:08.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.984/600.0
2026-01-22T01:36:09.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:09.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:36:09.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:09.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:10.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.916/600.0
2026-01-22T01:36:12.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:12.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:12.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:12.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:13.089 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.848/600.0
2026-01-22T01:36:15.157 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.742/600.0
2026-01-22T01:36:15.669 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:36:15.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:15.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:15.942 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:15.942 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:17.226 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.674/600.0
2026-01-22T01:36:18.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:18.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:18.966 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:18.966 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:19.294 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.606/600.0
2026-01-22T01:36:21.362 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.537/600.0
2026-01-22T01:36:21.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:21.970 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:21.970 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:21.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:23.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.469/600.0
2026-01-22T01:36:24.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:24.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:24.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:24.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:25.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.401/600.0
2026-01-22T01:36:25.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:36:27.492 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.37/600.0
2026-01-22T01:36:27.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:27.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:36:27.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:27.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:36:29.522 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.339/600.0
2026-01-22T01:36:31.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:31.023 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T01:36:31.023 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:31.023 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:36:31.553 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.309/600.0
2026-01-22T01:36:33.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.278/600.0
2026-01-22T01:36:34.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:34.042 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:36:34.042 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:34.042 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:35.686 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:36:35.689 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.21/600.0
2026-01-22T01:36:37.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:37.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:37.046 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:37.046 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:37.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 134.142/600.0
2026-01-22T01:36:39.826 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 132.074/600.0
2026-01-22T01:36:40.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:40.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:40.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:40.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:41.894 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 130.005/600.0
2026-01-22T01:36:43.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:43.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:43.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:43.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:43.962 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.937/600.0
2026-01-22T01:36:45.696 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:36:46.030 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.869/600.0
2026-01-22T01:36:46.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:46.094 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:36:46.094 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:46.094 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:36:48.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.801/600.0
2026-01-22T01:36:49.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:49.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:36:49.098 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:49.098 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:50.167 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.732/600.0
2026-01-22T01:36:52.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:52.120 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:52.120 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:52.120 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:52.235 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.664/600.0
2026-01-22T01:36:54.303 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.596/600.0
2026-01-22T01:36:55.123 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:55.124 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:36:55.124 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:55.124 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:36:55.703 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:36:55.704 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:36:23.989557
2026-01-22T01:36:55.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:36:23.989557
2026-01-22T01:36:55.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:36:55.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:36:55.704 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:36:55.704 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:36:55&start_after=2026-01-20T23:36:55&end_after=2026-01-21T23:36:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:36:55.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:36:55.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:36:55.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:36:55.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:36:55.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:36:55.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:36:55.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:36:55.853 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:36:55.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:36:55.855 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:36:55.856 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:36:55.856 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:36:55.856 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:36:55.856 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:36:55.856 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:36:55.856 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2114.143245
2026-01-22T01:36:55.856 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:36:56.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.528/600.0
2026-01-22T01:36:58.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:36:58.126 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:36:58.126 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:36:58.126 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:36:58.402 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.46/600.0
2026-01-22T01:37:00.470 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.431/600.0
2026-01-22T01:37:01.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:01.146 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:37:01.146 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:01.146 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:02.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.363/600.0
2026-01-22T01:37:04.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:04.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:04.150 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:04.150 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:04.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.294/600.0
2026-01-22T01:37:04.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:37:06.637 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.224/600.0
2026-01-22T01:37:07.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:07.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:07.169 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:07.169 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:08.705 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.195/600.0
2026-01-22T01:37:10.172 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:10.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:10.189 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:10.189 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:10.736 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.126/600.0
2026-01-22T01:37:12.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.096/600.0
2026-01-22T01:37:13.192 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:13.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:37:13.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:13.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:37:14.872 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.028/600.0
2026-01-22T01:37:14.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:37:16.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:16.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:37:16.213 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:16.214 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:16.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 94.96/600.0
2026-01-22T01:37:19.009 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 92.891/600.0
2026-01-22T01:37:19.214 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:19.233 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:19.233 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:19.233 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:21.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 90.824/600.0
2026-01-22T01:37:22.236 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:22.237 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:22.237 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:22.237 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:23.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.754/600.0
2026-01-22T01:37:24.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:37:25.175 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.724/600.0
2026-01-22T01:37:25.240 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:25.259 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:25.259 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:25.259 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:27.244 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.656/600.0
2026-01-22T01:37:28.262 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:28.282 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:37:28.282 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:28.282 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:37:29.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.587/600.0
2026-01-22T01:37:31.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:31.286 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:37:31.286 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:31.286 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:31.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.52/600.0
2026-01-22T01:37:33.411 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.451/600.0
2026-01-22T01:37:34.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:34.290 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:37:34.290 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:34.290 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:37:34.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:37:35.441 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.421/600.0
2026-01-22T01:37:37.293 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:37.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-22T01:37:37.329 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:37.329 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:37:37.472 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.392/600.0
2026-01-22T01:37:39.502 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.359/600.0
2026-01-22T01:37:40.332 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:40.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-22T01:37:40.333 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:40.333 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:37:41.532 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.329/600.0
2026-01-22T01:37:43.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:43.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:37:43.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:43.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:43.563 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.299/600.0
2026-01-22T01:37:44.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:37:45.594 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.268/600.0
2026-01-22T01:37:46.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:46.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:46.375 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:46.375 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:47.624 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.237/600.0
2026-01-22T01:37:49.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:49.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-22T01:37:49.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:49.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:37:49.655 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.208/600.0
2026-01-22T01:37:51.685 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.176/600.0
2026-01-22T01:37:52.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:52.399 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.001
2026-01-22T01:37:52.399 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:52.399 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:37:53.715 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.146/600.0
2026-01-22T01:37:54.913 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:37:54.933 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:37:24.193526
2026-01-22T01:37:54.933 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:37:24.193526
2026-01-22T01:37:54.933 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:37:54.933 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:37:54.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:37:54.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:37:54&start_after=2026-01-20T23:37:54&end_after=2026-01-21T23:37:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:37:55.044 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:37:55.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:37:55.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:37:55.047 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:37:55.048 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:37:55.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:37:55.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:37:55.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:37:55.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:37:55.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:37:55.055 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:37:55.055 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:37:55.055 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:37:55.055 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:37:55.055 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:37:55.055 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 2054.944225
2026-01-22T01:37:55.055 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:37:55.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:55.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:37:55.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:55.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:55.746 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.116/600.0
2026-01-22T01:37:57.776 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.085/600.0
2026-01-22T01:37:58.407 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:37:58.407 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:37:58.407 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:37:58.407 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:37:59.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.056/600.0
2026-01-22T01:38:01.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:01.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:01.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:01.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:01.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.024/600.0
2026-01-22T01:38:03.868 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.994/600.0
2026-01-22T01:38:04.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:38:04.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:04.447 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:04.447 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:04.447 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:05.898 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.964/600.0
2026-01-22T01:38:07.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:07.450 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:38:07.450 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:07.450 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:38:07.928 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.933/600.0
2026-01-22T01:38:09.959 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.904/600.0
2026-01-22T01:38:10.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:10.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T01:38:10.475 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:10.475 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:38:11.989 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.872/600.0
2026-01-22T01:38:13.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:13.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-22T01:38:13.498 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:13.498 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:38:14.020 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.844/600.0
2026-01-22T01:38:14.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:38:16.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.812/600.0
2026-01-22T01:38:16.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:16.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:38:16.501 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:16.501 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:18.081 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.781/600.0
2026-01-22T01:38:19.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:19.528 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:19.528 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:19.528 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:20.111 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.75/600.0
2026-01-22T01:38:22.141 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.72/600.0
2026-01-22T01:38:22.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:22.532 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:22.532 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:22.532 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:24.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:38:24.172 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.69/600.0
2026-01-22T01:38:25.535 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:25.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:25.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:25.557 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:26.202 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.659/600.0
2026-01-22T01:38:28.233 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.63/600.0
2026-01-22T01:38:28.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:28.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:28.561 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:28.561 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:30.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.598/600.0
2026-01-22T01:38:31.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:31.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:38:31.583 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:31.583 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:38:32.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.568/600.0
2026-01-22T01:38:34.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:38:34.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.538/600.0
2026-01-22T01:38:34.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:34.586 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:38:34.586 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:34.586 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:38:36.355 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.507/600.0
2026-01-22T01:38:37.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:37.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00100000000003
2026-01-22T01:38:37.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:37.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:38:38.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.476/600.0
2026-01-22T01:38:40.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.446/600.0
2026-01-22T01:38:40.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:40.594 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:38:40.594 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:40.594 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:42.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.416/600.0
2026-01-22T01:38:43.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:43.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:43.613 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:43.613 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:44.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:38:44.514 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.348/600.0
2026-01-22T01:38:46.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.317/600.0
2026-01-22T01:38:46.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:46.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:46.616 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:46.617 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:48.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.287/600.0
2026-01-22T01:38:49.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:49.636 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:49.636 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:49.636 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:50.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.256/600.0
2026-01-22T01:38:52.635 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:38:52.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:52.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:52.638 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:52.638 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:54.113 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:38:54.114 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:38:24.392189
2026-01-22T01:38:54.114 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:38:24.392189
2026-01-22T01:38:54.114 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:38:54.114 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:38:54.115 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:38:54.115 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:38:54&start_after=2026-01-20T23:38:54&end_after=2026-01-21T23:38:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:38:54.222 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:38:54.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:38:54.224 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:38:54.225 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:38:54.226 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:38:54.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:38:54.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:38:54.230 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:38:54.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:38:54.232 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:38:54.233 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:38:54.233 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:38:54.233 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:38:54.233 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:38:54.233 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:38:54.233 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1995.766227
2026-01-22T01:38:54.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:38:54.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:38:55.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:55.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:55.662 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:55.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:56.696 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:38:58.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:38:58.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:38:58.667 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:38:58.667 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:38:58.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:00.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:01.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:01.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:01.688 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:01.688 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:02.789 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:03.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:39:04.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:04.693 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:04.694 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:04.694 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:04.819 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:06.850 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:07.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:07.719 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:07.719 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:07.720 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:08.880 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:10.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:10.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-22T01:39:10.725 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:10.726 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:39:10.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:12.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:13.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:39:13.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:13.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:39:13.752 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:13.752 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:14.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:39:15.537 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:39:15.538 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:39:15.556 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:39:16.756 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:39:16.973 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T01:39:16.973 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T01:39:16.973 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:39:16.974 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:39:16.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:39:16.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:39:16.974 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:39:16.975 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:39:16.975 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:39:16.975 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:39:16.992 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:39:16.995 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:39:16.995 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T01:39:16.995 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T01:39:16.996 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T01:39:17.191 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T01:39:18.211 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T01:39:19.231 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T01:39:20.252 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T01:39:21.273 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-22T01:39:22.294 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 6
2026-01-22T01:39:23.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:39:23.358 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T01:39:24.359 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:39:24.373 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T01:39:25.374 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:39:25.377 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.78
2026-01-22T01:39:25.377 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:38:57
2026-01-22T01:39:25.377 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:38:57
2026-01-22T01:39:25.377 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T01:39:25.378 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09044834645669289
2026-01-22T01:39:25.381 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T01:39:25.382 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:39:25.382 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:39:25.382 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:39:25.426 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T01:39:26.427 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:39:26.428 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:39:26.428 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:39:27.470 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:39:29.493 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:39:29.493 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:39:29.493 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:39:29.494 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:39:29.494 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:39:29.497 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:39:29.498 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:39:29.504 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:39:29.616 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:39:29.617 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:39:29.620 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038769.6202314
2026-01-22T01:39:29.995 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:39:29.996 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:39:30.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:30.514 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:30.515 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:30.515 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:33.276 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:39:33.518 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:33.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:33.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:33.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:35.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.602/60.0
2026-01-22T01:39:36.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:36.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:36.563 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:36.563 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:37.098 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.561/60.0
2026-01-22T01:39:39.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.531/60.0
2026-01-22T01:39:39.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:39.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:39:39.584 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:39.584 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:39:41.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.5/60.0
2026-01-22T01:39:42.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:42.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:39:42.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:42.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:43.189 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.469/60.0
2026-01-22T01:39:43.287 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:39:45.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.439/60.0
2026-01-22T01:39:45.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:45.612 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:45.612 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:45.612 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:47.250 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.408/60.0
2026-01-22T01:39:48.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:48.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:39:48.618 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:48.618 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:39:49.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.378/60.0
2026-01-22T01:39:51.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.348/60.0
2026-01-22T01:39:51.621 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:51.640 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:39:51.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:51.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:53.298 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:39:53.320 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:39:24.596115
2026-01-22T01:39:53.320 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:39:24.596115
2026-01-22T01:39:53.320 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:39:53.321 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:39:53.322 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:39:53.322 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:39:53&start_after=2026-01-20T23:39:53&end_after=2026-01-21T23:39:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:39:53.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.317/60.0
2026-01-22T01:39:53.447 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:39:53.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:39:53.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:39:53.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:39:53.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:39:53.452 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:39:53.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:39:53.455 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:39:53.456 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:39:53.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:39:53.458 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:39:53.458 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:39:53.458 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:39:53.458 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:39:53.458 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:39:53.458 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1936.541386
2026-01-22T01:39:53.458 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:39:54.644 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:54.663 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:39:54.664 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:54.664 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:39:55.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.248/60.0
2026-01-22T01:39:57.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.181/60.0
2026-01-22T01:39:57.667 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:39:57.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:39:57.686 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:39:57.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:39:59.507 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.15/60.0
2026-01-22T01:40:00.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:00.690 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:40:00.690 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:00.690 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:01.538 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.122/60.0
2026-01-22T01:40:02.468 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:40:03.606 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.091/60.0
2026-01-22T01:40:03.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:03.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:03.709 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:03.709 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:05.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.022/60.0
2026-01-22T01:40:06.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:06.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:40:06.711 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:06.711 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:40:07.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.954/60.0
2026-01-22T01:40:09.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:09.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 179.99999999999997
2026-01-22T01:40:09.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:09.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:40:09.811 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.886/60.0
2026-01-22T01:40:11.879 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.818/60.0
2026-01-22T01:40:12.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:40:12.737 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:12.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:40:12.738 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:12.738 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:13.947 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.749/60.0
2026-01-22T01:40:15.741 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:15.762 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:15.762 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:15.762 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:16.016 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.682/60.0
2026-01-22T01:40:18.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.613/60.0
2026-01-22T01:40:18.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:18.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:18.766 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:18.766 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:20.152 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.546/60.0
2026-01-22T01:40:21.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:21.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:40:21.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:21.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:40:22.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.478/60.0
2026-01-22T01:40:22.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:40:24.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.41/60.0
2026-01-22T01:40:24.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:24.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:40:24.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:24.794 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:26.357 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.34/60.0
2026-01-22T01:40:27.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:27.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:27.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:27.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:28.387 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.272/60.0
2026-01-22T01:40:30.418 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:30.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:30.822 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:30.822 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:30.822 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:32.448 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:32.497 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:40:33.825 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:33.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:33.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:33.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:34.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:36.510 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:36.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:36.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:40:36.850 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:36.850 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:40:38.540 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:39.853 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:39.871 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:40:39.871 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:39.871 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:40.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:42.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:40:42.602 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:42.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:42.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:42.874 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:42.874 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:44.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:45.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:45.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:45.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:45.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:46.663 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:48.694 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:48.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:48.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:40:48.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:48.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:40:50.724 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:40:51.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:40:51.920 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:40:51.920 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:40:51.920 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:40:52.091 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:40:52.138 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:40:52.140 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:40:52.517 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:40:52.518 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:40:24.832429
2026-01-22T01:40:52.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:40:24.832429
2026-01-22T01:40:52.518 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:40:52.518 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:40:52.518 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:40:52.518 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:40:52&start_after=2026-01-20T23:40:52&end_after=2026-01-21T23:40:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:40:52.631 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:40:52.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:40:52.633 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:40:52.634 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:40:52.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:40:52.636 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:40:52.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:40:52.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:40:52.639 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:40:52.641 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:40:52.642 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:40:52.642 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:40:52.642 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:40:52.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:40:52.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:40:52.642 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1877.357673
2026-01-22T01:40:52.642 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:40:54.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:40:54.921 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T01:40:54.921 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T01:40:54.921 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:40:54.921 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:40:54.921 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:40:54.921 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:40:54.921 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:40:54.921 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:40:54.922 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:40:54.922 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:40:54.945 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:40:54.946 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:40:54.946 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T01:40:54.946 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T01:40:54.946 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T01:40:54.994 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T01:40:56.014 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T01:40:57.035 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T01:40:58.056 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T01:40:59.105 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T01:41:00.106 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:41:00.158 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T01:41:01.159 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:41:01.160 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.63
2026-01-22T01:41:01.160 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:40:34
2026-01-22T01:41:01.160 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:40:34
2026-01-22T01:41:01.160 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T01:41:01.160 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.0906165748031496
2026-01-22T01:41:01.164 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T01:41:01.164 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:41:01.164 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:41:01.164 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:41:01.211 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T01:41:01.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:41:02.211 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:41:02.212 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:41:02.212 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:41:03.245 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:41:05.248 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:41:05.248 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:41:05.248 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:41:05.248 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:41:05.249 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:41:05.250 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:41:05.251 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:41:05.252 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:41:05.353 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:41:05.353 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:41:05.355 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038865.3552322
2026-01-22T01:41:05.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:41:05.749 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:41:06.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:06.269 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:41:06.269 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:06.269 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:09.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:09.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:41:09.273 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:09.273 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:41:10.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-22T01:41:11.661 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:41:12.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:12.295 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:41:12.295 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:12.295 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:12.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-22T01:41:14.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.522/60.0
2026-01-22T01:41:15.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:15.299 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:15.299 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:15.299 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:16.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.49/60.0
2026-01-22T01:41:18.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:18.322 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:18.351 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:18.351 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:18.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.46/60.0
2026-01-22T01:41:20.956 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.429/60.0
2026-01-22T01:41:21.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:21.371 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:21.371 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:21.371 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:21.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:41:22.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.398/60.0
2026-01-22T01:41:24.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:24.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:24.390 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:24.390 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:25.017 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.368/60.0
2026-01-22T01:41:27.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.339/60.0
2026-01-22T01:41:27.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:27.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:41:27.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:27.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:41:29.078 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.307/60.0
2026-01-22T01:41:30.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:30.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.00000000000003
2026-01-22T01:41:30.413 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:30.413 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:41:31.108 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.277/60.0
2026-01-22T01:41:31.679 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:41:33.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.246/60.0
2026-01-22T01:41:33.413 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:33.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99899999999997
2026-01-22T01:41:33.414 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:33.414 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:41:35.169 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.216/60.0
2026-01-22T01:41:36.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:36.436 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00099999999998
2026-01-22T01:41:36.437 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:36.437 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:41:37.200 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.185/60.0
2026-01-22T01:41:39.230 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.155/60.0
2026-01-22T01:41:39.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:39.455 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:41:39.455 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:39.455 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:41:41.261 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.125/60.0
2026-01-22T01:41:41.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:41:42.458 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:42.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:41:42.475 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:42.475 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:43.291 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.094/60.0
2026-01-22T01:41:45.321 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.064/60.0
2026-01-22T01:41:45.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:45.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:45.479 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:45.479 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:47.352 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.033/60.0
2026-01-22T01:41:48.482 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:48.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:48.501 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:48.501 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:49.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.003/60.0
2026-01-22T01:41:51.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.972/60.0
2026-01-22T01:41:51.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:51.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:41:51.505 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:51.505 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:51.698 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:41:51.699 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:41:25.033320
2026-01-22T01:41:51.699 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:41:25.033320
2026-01-22T01:41:51.699 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:41:51.699 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:41:51.699 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:41:51.699 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:41:51&start_after=2026-01-20T23:41:51&end_after=2026-01-21T23:41:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:41:51.806 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:41:51.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:41:51.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:41:51.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:41:51.811 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:41:51.811 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:41:51.813 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:41:51.814 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:41:51.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:41:51.816 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:41:51.817 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:41:51.817 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:41:51.817 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:41:51.817 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:41:51.817 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:41:51.817 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1818.182556
2026-01-22T01:41:51.817 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:41:53.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.942/60.0
2026-01-22T01:41:54.508 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:54.530 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:41:54.530 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:54.530 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:41:55.474 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.912/60.0
2026-01-22T01:41:57.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.883/60.0
2026-01-22T01:41:57.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:41:57.552 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:41:57.552 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:41:57.552 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:41:59.534 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.851/60.0
2026-01-22T01:42:00.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:00.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:42:00.574 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:00.574 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:42:00.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:42:01.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.82/60.0
2026-01-22T01:42:03.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:03.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:42:03.578 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:03.578 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:42:03.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.79/60.0
2026-01-22T01:42:05.626 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:06.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:06.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:42:06.601 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:06.601 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:07.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:09.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:09.602 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:42:09.602 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:09.602 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:09.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:10.835 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:42:11.717 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:12.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:12.624 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:42:12.624 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:12.624 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:13.747 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:15.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:15.645 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:42:15.645 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:15.645 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:42:15.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:17.808 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:18.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:18.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-22T01:42:18.668 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:18.668 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:19.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:20.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:42:21.671 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:21.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:42:21.672 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:21.672 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:42:21.869 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:23.900 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:24.675 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:24.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99899999999997
2026-01-22T01:42:24.691 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:24.691 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:42:25.930 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:42:27.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:27.711 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:42:27.711 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:27.711 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:27.752 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:42:27.752 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:42:27.753 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:42:30.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:42:30.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T01:42:30.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T01:42:30.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:42:30.714 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:42:30.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:42:30.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:42:30.714 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:42:30.714 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:42:30.714 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:42:30.714 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:42:30.726 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:42:30.727 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:42:30.727 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T01:42:30.727 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T01:42:30.727 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T01:42:30.776 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T01:42:30.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:42:31.796 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T01:42:32.817 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T01:42:33.838 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T01:42:34.881 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T01:42:35.882 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:42:35.896 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T01:42:36.897 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:42:36.898 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.9
2026-01-22T01:42:36.898 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:42:10
2026-01-22T01:42:36.898 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:42:10
2026-01-22T01:42:36.898 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T01:42:36.898 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09274133858267715
2026-01-22T01:42:36.901 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T01:42:36.902 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:42:36.902 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:42:36.902 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:42:36.912 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T01:42:37.913 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:42:37.913 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:42:37.913 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:42:39.015 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:42:40.863 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:42:41.033 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:42:41.033 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:42:41.033 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:42:41.033 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:42:41.033 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:42:41.035 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:42:41.035 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:42:41.036 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:42:41.236 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:42:41.236 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:42:41.237 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769038961.2378538
2026-01-22T01:42:41.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:42:41.534 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:42:42.034 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:42.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:42:42.053 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:42.053 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:45.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:45.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:42:45.073 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:45.073 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:46.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.628/60.0
2026-01-22T01:42:48.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:48.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:42:48.077 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:48.077 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:42:48.755 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-22T01:42:50.823 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.483/60.0
2026-01-22T01:42:50.874 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:42:50.891 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:42:25.256402
2026-01-22T01:42:50.891 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:42:25.256402
2026-01-22T01:42:50.891 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:42:50.891 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:42:50.892 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:42:50.892 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:42:50&start_after=2026-01-20T23:42:50&end_after=2026-01-21T23:42:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:42:51.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:42:51.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:42:51.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:42:51.008 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:42:51.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:42:51.010 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:42:51.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:42:51.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:42:51.013 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:42:51.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:42:51.016 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:42:51.016 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:42:51.016 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:42:51.016 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:42:51.016 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:42:51.016 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1758.983712
2026-01-22T01:42:51.016 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:42:51.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:51.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:42:51.081 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:51.081 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:52.891 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.415/60.0
2026-01-22T01:42:54.085 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:54.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:42:54.086 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:54.086 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:54.959 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.347/60.0
2026-01-22T01:42:57.027 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.279/60.0
2026-01-22T01:42:57.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:42:57.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:42:57.107 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:42:57.107 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:42:59.095 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.211/60.0
2026-01-22T01:43:00.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:43:00.110 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:00.111 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:43:00.111 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:00.111 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:43:01.163 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.142/60.0
2026-01-22T01:43:03.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:03.134 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99899999999997
2026-01-22T01:43:03.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:03.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:43:03.231 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.075/60.0
2026-01-22T01:43:05.299 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.007/60.0
2026-01-22T01:43:06.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:06.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:43:06.138 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:06.138 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:07.367 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.938/60.0
2026-01-22T01:43:09.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:09.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:43:09.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:09.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:09.435 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.871/60.0
2026-01-22T01:43:10.035 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:43:11.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.803/60.0
2026-01-22T01:43:12.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:12.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:43:12.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:12.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:13.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.734/60.0
2026-01-22T01:43:15.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:15.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:43:15.185 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:15.185 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:43:15.639 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.666/60.0
2026-01-22T01:43:17.707 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.598/60.0
2026-01-22T01:43:18.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:18.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:43:18.187 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:18.187 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:19.775 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.53/60.0
2026-01-22T01:43:20.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:43:21.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:21.204 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:43:21.204 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:21.204 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:43:21.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.463/60.0
2026-01-22T01:43:23.911 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.394/60.0
2026-01-22T01:43:24.207 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:24.208 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:43:24.208 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:24.208 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:25.979 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.326/60.0
2026-01-22T01:43:27.211 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:27.212 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:43:27.212 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:27.212 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:28.047 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.258/60.0
2026-01-22T01:43:30.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:43:30.115 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.19/60.0
2026-01-22T01:43:30.215 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:30.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:43:30.216 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:30.216 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:32.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.123/60.0
2026-01-22T01:43:33.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:33.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.0
2026-01-22T01:43:33.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:33.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:43:34.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.054/60.0
2026-01-22T01:43:36.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:36.258 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:43:36.258 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:36.258 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:36.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.986/60.0
2026-01-22T01:43:38.388 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.918/60.0
2026-01-22T01:43:39.261 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:39.281 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:43:39.281 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:39.281 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:43:40.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:43:40.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.85/60.0
2026-01-22T01:43:42.284 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:42.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:43:42.285 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:42.285 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:42.524 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:44.592 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:45.286 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:45.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:43:45.305 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:45.305 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:43:46.660 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:48.308 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:48.309 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:43:48.309 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:48.309 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:48.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:50.070 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:43:50.071 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:43:25.459537
2026-01-22T01:43:50.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:43:25.459537
2026-01-22T01:43:50.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:43:50.071 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:43:50.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:43:50.071 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:43:50&start_after=2026-01-20T23:43:50&end_after=2026-01-21T23:43:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:43:50.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:43:50.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:43:50.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:43:50.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:43:50.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:43:50.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:43:50.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:43:50.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:43:50.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:43:50.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:43:50.197 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:43:50.197 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 10 configurations
2026-01-22T01:43:50.197 [DEBUG] [Poll thread] [schedule_poller.py] [next_is_current()] Next is current = 13544
2026-01-22T01:43:50.197 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:43:50.197 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:43:50.197 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1699.802226
2026-01-22T01:43:50.197 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:43:50.796 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:51.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:51.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:43:51.333 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:51.334 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:43:52.864 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:54.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:54.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:43:54.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:54.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:54.932 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:57.000 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:57.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:43:57.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:43:57.359 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:43:57.359 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:43:59.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:43:59.207 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:44:00.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:44:00.363 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:44:00.363 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:44:00.363 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:44:01.136 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:44:03.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:44:03.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:44:03.389 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:44:03.389 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:44:03.389 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:44:03.666 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:44:03.667 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:44:03.668 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:44:06.392 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:44:06.392 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T01:44:06.392 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T01:44:06.392 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:44:06.392 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:44:06.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:44:06.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:44:06.392 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:44:06.392 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:44:06.392 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:44:06.392 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:44:06.403 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:44:06.404 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:44:06.404 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T01:44:06.404 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:44:06.404 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:44:06.603 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T01:44:07.623 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T01:44:08.643 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T01:44:09.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:44:09.663 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T01:44:10.684 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T01:44:11.704 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T01:44:12.725 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:44:13.726 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T01:44:13.726 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T01:44:13.726 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:44:13.726 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:44:13.757 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:44:14.757 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:44:14.810 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:44:15.811 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:44:15.812 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.45
2026-01-22T01:44:15.812 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:43:46
2026-01-22T01:44:15.812 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:43:46
2026-01-22T01:44:15.812 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:44:15.812 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09269566929133857
2026-01-22T01:44:15.815 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T01:44:15.815 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T01:44:15.815 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T01:44:16.855 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:44:18.858 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T01:44:18.858 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:44:18.858 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:44:18.858 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:44:18.858 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:44:18.860 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:44:18.860 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:44:18.862 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:44:19.001 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:44:19.001 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:44:19.002 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039059.0028489
2026-01-22T01:44:19.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:44:19.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:44:19.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:44:19.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:44:19.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:44:19.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:44:19.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:44:22.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:44:22.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:44:22.897 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:44:22.897 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:44:24.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234670_13498_13544.json , Iteration 1/1, Unit 5/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T01:44:25.285 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:44:25.285 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:44:25.306 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:44:25.900 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:44:26.456 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T01:44:26.456 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:44:26.456 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:44:26.858 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:44:26.858 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script ATLAS26ayq_17234670_13498_13544.json was run successfully
2026-01-22T01:44:26.858 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T01:44:26.858 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T01:44:26.858 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T01:44:26.858 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T01:44:26.858 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T01:44:26.858 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:44:26.858 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:44:27.359 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:44:27.359 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T01:44:27.359 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:44:27.359 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:44:27.359 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:44:27.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:44:27.359 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:44:27.359 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:44:27.359 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T01:44:27.361 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:34.14936   Targ dec = -32:04:23.0556
2026-01-22T01:44:27.361 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:44:27.361 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:44:27.361 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:44:27.368 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:44:27.368 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:44:27.368 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:44:27.368 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:44:28.396 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:44:29.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:44:30.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:44:30.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:44:30.397 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:44:30.863 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:44:30.863 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T01:44:30.863 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17513423 COMPLETED 13544 reason
2026-01-22T01:44:30.863 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17513423 COMPLETED 13544 reason
2026-01-22T01:44:30.863 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:44:30.863 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:44:30.863 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:44:30.863 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:44:30.863 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:44:30.863 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:44:33.866 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:44:33.866 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:44:35.868 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:44:35.868 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:44:35.868 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T01:44:35.868 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T01:44:35.868 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T01:44:35.871 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T01:44:35.871 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T23:45:00Z
2026-01-22T01:44:35.871 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T01:44:35.871 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T01:44:35.871 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T01:44:35.871 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T01:44:35.872 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T01:44:35.872 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:44:35.872 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:44:36.372 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:44:36.372 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T01:44:36.372 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:44:36.372 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:44:36.372 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:44:36.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:44:36.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:44:36.372 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:44:36.373 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T01:44:36.375 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:34.1958   Targ dec = -32:04:23.0484
2026-01-22T01:44:36.375 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:44:36.375 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:44:36.375 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:44:36.380 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:44:36.380 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:44:36.380 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:44:36.380 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:44:37.428 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:44:39.247 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:44:39.430 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:44:39.430 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:44:39.430 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:44:39.876 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:44:39.876 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T01:44:39.925 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T01:44:39.925 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T01:44:39.925 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T01:44:39.925 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17513423
2026-01-22T01:44:39.925 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T01:44:39.925 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T01:44:39.925 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T23:26:06', 'end': '2026-01-21T23:44:39', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1113.0', 'events': {}}} with config status ID 17513423
2026-01-22T01:44:40.061 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T01:44:40.061 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:23:37Z', 'guide_off', 'config_id 13544', 'config_status_id 17513423', 'update_OCS 17513423 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234670_13498_13544.json', 'run_script ATLAS26ayq_17234670_13498_13544.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513423 COMPLETED 13544 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:45:00Z', 'run_script arc_flat_lamp_off.json'] at time 01:44:40
2026-01-22T01:44:49.257 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:44:49.258 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:44:25.701504
2026-01-22T01:44:49.258 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:44:25.701504
2026-01-22T01:44:49.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:44:49.258 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:44:49.258 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:44:49.258 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:44:49&start_after=2026-01-20T23:44:49&end_after=2026-01-21T23:44:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:44:49.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:44:49.359 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:44:49.359 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 1 configurations
2026-01-22T01:44:49.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:44:49.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-21T23:23:37Z
2026-01-22T01:44:49.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -1272.359623
2026-01-22T01:44:49.360 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T01:44:51.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T01:44:51.363 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T01:44:51.363 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:44:51.363472    Obs time: 2026-01-21 23:23:37
2026-01-22T01:44:51.363 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:38:45.636528
2026-01-22T01:44:51.363 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  85125
2026-01-22T01:44:51.363 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:23:37Z', 'guide_off', 'config_id 13544', 'config_status_id 17513441', 'update_OCS 17513441 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234688_13498_13544.json', 'run_script ATLAS26ayq_17234688_13498_13544.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513441 COMPLETED 13544 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:45:00Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T01:44:51.363 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T01:44:51.363 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T01:44:51.363 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T01:44:51.363 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T01:44:51.364 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T01:44:51.364 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T01:44:51.364 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T01:44:51.365 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T01:44:51.365 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T01:44:51.365 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T01:44:51.365 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:44:51.365 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:44:51.365 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:44:51.365 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:44:51.365 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:44:51.365 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:44:54.368 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:44:54.368 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:44:56.370 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:44:56.370 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:44:56.370 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-21T23:23:37Z
2026-01-22T01:44:56.370 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-21T23:23:37Z
2026-01-22T01:44:56.370 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T01:44:56.370 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T01:44:56.370 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T01:44:56.370 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:44:56.370 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:44:56.370 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:44:58.371 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:44:59.373 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:44:59.374 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13544
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13544
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17513441
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17513441
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17513441 ATTEMPTED
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17513441 ATTEMPTED
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 9.45647, 'targ_dec': -32.0086, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': False, 'acquire_target': True, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_ATLAS26ayq_17234688_13498_13544.json'}
2026-01-22T01:45:01.376 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:45:01.376 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17513441
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T01:45:01.376 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17513441
2026-01-22T01:45:01.442 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T01:45:01.877 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:45:01.877 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_ATLAS26ayq_17234688_13498_13544.json 1 times
2026-01-22T01:45:01.877 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T01:45:01.882 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T01:45:01.882 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T01:45:01.882 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T01:45:04.914 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:45:05.936 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:45:06.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:45:07.976 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:45:08.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:45:08.995 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:45:10.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T01:45:11.033 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T01:45:11.034 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  9.45688216251907 is close enough to target ra = 9.45647
2026-01-22T01:45:11.034 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  -32.0073444830381 is close enough to target dec = -32.0086
2026-01-22T01:45:11.034 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T01:45:11.034 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:45:11.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:45:11.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:45:11.034 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:45:11.035 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T01:45:11.035 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T01:45:11.046 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:45:11.046 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:45:11.098 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:45:12.100 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:45:12.100 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:45:12.114 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:45:13.115 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:45:13.167 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:45:14.168 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:45:14.168 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.42
2026-01-22T01:45:14.169 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:44:18
2026-01-22T01:45:14.169 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:44:18
2026-01-22T01:45:14.169 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:45:14.169 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09271385826771651
2026-01-22T01:45:14.173 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T01:45:14.173 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T01:45:14.173 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T01:45:14.181 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:45:14.181 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:45:14.220 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:45:15.221 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:45:15.221 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:45:15.273 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:45:16.274 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:45:16.326 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:45:17.327 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:45:17.328 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.42
2026-01-22T01:45:17.328 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:44:18
2026-01-22T01:45:17.328 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:44:18
2026-01-22T01:45:17.328 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:45:17.328 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09271385826771651
2026-01-22T01:45:18.392 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:45:22.376 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T01:45:22.376 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:45:22.376 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:45:22.376 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:45:22.376 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:45:22.377 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:45:22.379 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:45:22.379 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:45:22.380 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:45:22.604 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:45:22.604 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:45:22.606 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039122.6060402
2026-01-22T01:45:27.867 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:45:27.867 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:45:27.883 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:45:27.886 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T01:45:28.402 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:45:31.889 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T01:45:31.890 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T01:45:38.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:45:41.942 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T01:45:41.942 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T01:45:41.942 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-22T01:45:41.942 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-22T01:45:41.942 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T01:45:41.962 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T01:45:41.962 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.634491
2026-01-22T01:45:41.962 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T01:45:41.962 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:26.712, -32:00:40.553).
2026-01-22T01:45:41.962 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 26.712  -32 00 40.553 .
2026-01-22T01:45:41.962 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 26.712  -32 00 40.553 .
2026-01-22T01:45:41.962 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510700.68
2026-01-22T01:45:41.962 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115240.553
2026-01-22T01:45:42.173 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T01:45:47.194 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T01:45:47.194 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:45:47.194 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:45:47.194 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:45:47.194 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:45:47.195 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:45:47.196 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:45:47.196 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:45:47.198 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:45:47.402 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:45:47.402 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:45:47.404 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039147.4046981
2026-01-22T01:45:48.423 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:45:48.439 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:45:25.905401
2026-01-22T01:45:48.439 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:45:25.905401
2026-01-22T01:45:48.439 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:45:48.439 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:45:48.439 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:45:48.439 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:45:48&start_after=2026-01-20T23:45:48&end_after=2026-01-21T23:45:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:45:48.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:45:48.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:45:48.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:45:48.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:45:48.582 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:45:48.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:45:48.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:45:48.586 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:45:48.587 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:45:48.588 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:45:48.588 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:45:48.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:45:48.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:45:48.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1581.411303
2026-01-22T01:45:48.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:45:48.696 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:45:51.664 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:45:51.664 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:45:51.688 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:45:51.703 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T01:45:55.707 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T01:45:57.598 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:46:05.759 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T01:46:05.759 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T01:46:05.759 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 09:27:23.28 = 510649.19999999995 arcseconds
2026-01-22T01:46:05.759 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec -32:00:30.96 = -115230.96 arcseconds
2026-01-22T01:46:05.759 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T01:46:05.779 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting rotation angle
2026-01-22T01:46:05.779 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Rotation angle = -0.644492
2026-01-22T01:46:05.779 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Extracting RA and dec
2026-01-22T01:46:05.779 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] lines = Field center: (RA H:M:S, Dec D:M:S) = (09:27:27.949, -31:57:49.941).
2026-01-22T01:46:05.779 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines = Field center   RA H M S  Dec D M S  =  09 27 27.949  -31 57 49.941 .
2026-01-22T01:46:05.779 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] now lines 09 27 27.949  -31 57 49.941 .
2026-01-22T01:46:05.779 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS RA in seconds: 510719.235
2026-01-22T01:46:05.779 [INFO] [script_worker] [instrument.py] [nudge_to_slit()] Got WCS Dec in seconds: -115069.941
2026-01-22T01:46:05.990 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T01:46:07.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:46:10.996 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T01:46:10.996 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:46:10.996 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:46:10.996 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:46:10.996 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:46:10.996 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:46:10.998 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:46:10.998 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:46:11.000 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:46:11.223 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:46:11.223 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:46:11.225 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039171.2255075
2026-01-22T01:46:12.498 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:46:15.483 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:46:15.483 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:46:15.503 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T01:46:15.507 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:46:17.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:46:21.526 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T01:46:21.526 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:46:21.526 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:46:21.526 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:46:21.526 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:46:21.528 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:46:21.528 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:46:21.530 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:46:21.643 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:46:21.643 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:46:21.645 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039181.6454632
2026-01-22T01:46:23.027 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T01:46:25.905 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:46:25.905 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:46:25.926 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:46:26.033 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T01:46:27.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:46:33.642 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9 to host 127.0.0.1 on port 12360
2026-01-22T01:46:33.642 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:46:33.642 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:46:36.645 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2016  11836  13.9
2026-01-22T01:46:36.645 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2016  11836  13.9
2026-01-22T01:46:37.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:46:38.648 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:46:47.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:46:47.710 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:46:26.108666
2026-01-22T01:46:47.710 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:46:26.108666
2026-01-22T01:46:47.711 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:46:47.711 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:46:47.711 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:46:47.711 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:46:47&start_after=2026-01-20T23:46:47&end_after=2026-01-21T23:46:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:46:47.819 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:46:47.819 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:46:47.820 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:46:47.822 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:46:47.822 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:46:47.824 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:46:47.825 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:46:47.826 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:46:47.827 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:46:47.828 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:46:47.828 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:46:47.828 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:46:47.828 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:46:47.828 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1522.171358
2026-01-22T01:46:47.828 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:46:56.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:47:06.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:47:16.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:47:17.687 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T01:47:17.687 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:47:17.687 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:47:20.690 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T01:47:20.690 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T01:47:22.692 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:47:22.692 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:47:22.692 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:47:22.692 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:47:22.692 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:47:22.692 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:47:22.692 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:47:22.692 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:47:23.748 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:47:25.751 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T01:47:25.751 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T01:47:25.751 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T01:47:26.627 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T01:47:26.627 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_ATLAS26ayq_17234688_13498_13544.json was run successfully
2026-01-22T01:47:26.627 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:47:26.627 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:47:26.627 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:47:26.627 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script ATLAS26ayq_17234688_13498_13544.json
2026-01-22T01:47:26.627 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 600000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 2, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 3, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 3, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 4, 'instrument': {'object': 'ATLAS26ayq', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'OUT', 'grism': 'OUT', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 4, 'filterB': 0, 'target_acquisition': {'acquire_target': False, 'targ_ra': '09:27:23.28', 'targ_dec': '-32:00:30.96', 'binx': 1, 'biny': 1, 'magic_x': 512, 'magic_y': 512, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 60000, 'num_exposures': 1}}, {'unit_number': 5, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'ATLAS26ayq_17234688_13498_13544.json'}
2026-01-22T01:47:26.627 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T01:47:26.627 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T01:47:26.867 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:47:27.128 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T01:47:27.128 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script ATLAS26ayq_17234688_13498_13544.json 1 times
2026-01-22T01:47:27.128 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 5: 1
2026-01-22T01:47:27.128 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:47:27.128 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:47:27.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:47:27.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:47:27.128 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:47:27.128 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:47:27.128 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:47:27.128 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:47:27.138 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:47:27.139 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:47:27.139 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T01:47:27.139 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T01:47:27.139 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:47:27.178 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:47:28.179 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T01:47:28.179 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T01:47:28.179 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T01:47:28.179 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T01:47:28.230 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T01:47:29.232 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T01:47:29.283 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T01:47:30.285 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:47:30.285 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.58
2026-01-22T01:47:30.285 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:46:27
2026-01-22T01:47:30.286 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:46:27
2026-01-22T01:47:30.286 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T01:47:30.286 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09261685039370077
2026-01-22T01:47:30.289 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T01:47:30.289 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:47:30.289 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:47:31.325 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:47:33.328 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:47:33.329 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:47:33.329 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:47:33.329 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:47:33.329 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:47:33.331 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:47:33.331 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:47:33.333 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:47:33.450 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:47:33.450 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:47:33.451 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039253.451914
2026-01-22T01:47:33.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:47:33.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:47:34.330 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:34.352 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:47:34.352 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:34.352 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:47:36.877 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:47:37.355 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:37.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:47:37.374 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:37.374 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:47:38.935 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 594.557/600.0
2026-01-22T01:47:40.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:40.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:47:40.397 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:40.397 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:47:40.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 592.518/600.0
2026-01-22T01:47:43.031 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 590.47/600.0
2026-01-22T01:47:43.400 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:43.403 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:47:43.403 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:43.403 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:47:45.110 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 588.422/600.0
2026-01-22T01:47:46.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:46.427 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:47:46.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:46.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:47:46.885 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:47:46.886 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:47:26.312290
2026-01-22T01:47:46.886 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:47:26.312290
2026-01-22T01:47:46.886 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:47:46.886 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:47:46.886 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:47:46.886 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:47:46&start_after=2026-01-20T23:47:46&end_after=2026-01-21T23:47:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:47:46.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:47:46.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:47:46.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:47:46.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:47:46.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:47:46.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:47:47.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:47:47.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:47:47.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:47:47.004 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:47:47.004 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:47:47.004 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:47:47.004 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:47:47.004 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1462.995412
2026-01-22T01:47:47.004 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:47:47.179 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 586.344/600.0
2026-01-22T01:47:49.237 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 584.273/600.0
2026-01-22T01:47:49.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:49.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:47:49.430 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:49.430 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:47:51.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 582.217/600.0
2026-01-22T01:47:52.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:52.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:47:52.451 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:52.451 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:47:53.385 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 580.141/600.0
2026-01-22T01:47:55.449 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 578.068/600.0
2026-01-22T01:47:55.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:55.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:47:55.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:55.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:47:56.011 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:47:57.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 576.004/600.0
2026-01-22T01:47:58.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:47:58.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:47:58.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:47:58.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:47:59.539 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 573.961/600.0
2026-01-22T01:48:01.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:01.498 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99900000000002
2026-01-22T01:48:01.498 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:01.498 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:48:01.613 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 571.914/600.0
2026-01-22T01:48:03.687 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 569.839/600.0
2026-01-22T01:48:04.501 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:04.523 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:48:04.523 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:04.523 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:05.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 567.765/600.0
2026-01-22T01:48:06.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:48:07.526 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:07.527 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:48:07.527 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:07.527 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:48:07.824 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 565.696/600.0
2026-01-22T01:48:09.882 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 563.628/600.0
2026-01-22T01:48:10.529 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:10.547 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:48:10.547 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:10.547 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:11.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 561.57/600.0
2026-01-22T01:48:13.550 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:13.567 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:48:13.567 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:13.567 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:13.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 559.507/600.0
2026-01-22T01:48:16.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:48:16.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 557.454/600.0
2026-01-22T01:48:16.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:16.570 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:48:16.570 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:16.570 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:48:18.115 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 555.402/600.0
2026-01-22T01:48:19.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:19.574 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:48:19.574 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:19.574 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:20.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 553.337/600.0
2026-01-22T01:48:22.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 551.275/600.0
2026-01-22T01:48:22.577 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:22.596 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:48:22.596 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:22.596 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:48:24.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 549.25/600.0
2026-01-22T01:48:25.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:25.600 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.999
2026-01-22T01:48:25.600 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:25.600 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:48:26.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:48:26.326 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 547.201/600.0
2026-01-22T01:48:28.378 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 545.127/600.0
2026-01-22T01:48:28.601 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:28.619 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99899999999997
2026-01-22T01:48:28.619 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:28.619 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:48:30.426 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 543.074/600.0
2026-01-22T01:48:31.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:31.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00099999999998
2026-01-22T01:48:31.641 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:31.641 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:48:32.463 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 541.026/600.0
2026-01-22T01:48:34.505 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 538.989/600.0
2026-01-22T01:48:34.641 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:34.659 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:48:34.659 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:34.659 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:36.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:48:36.547 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 536.948/600.0
2026-01-22T01:48:37.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:37.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:48:37.662 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:37.662 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:38.621 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 534.905/600.0
2026-01-22T01:48:40.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:40.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 532.831/600.0
2026-01-22T01:48:40.684 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:48:40.684 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:40.684 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:42.753 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 530.778/600.0
2026-01-22T01:48:43.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:43.685 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:48:43.685 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:43.686 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:48:44.822 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 528.699/600.0
2026-01-22T01:48:46.056 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:48:46.057 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:48:26.515996
2026-01-22T01:48:46.057 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:48:26.515996
2026-01-22T01:48:46.057 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:48:46.057 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:48:46.057 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:48:46.057 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:48:46&start_after=2026-01-20T23:48:46&end_after=2026-01-21T23:48:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:48:46.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:48:46.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:48:46.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:48:46.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:48:46.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:48:46.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:48:46.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:48:46.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:48:46.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:48:46.199 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:48:46.199 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:48:46.199 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:48:46.199 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:48:46.199 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1403.800083
2026-01-22T01:48:46.199 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:48:46.687 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:46.701 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T01:48:46.701 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:46.701 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:48:46.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 526.63/600.0
2026-01-22T01:48:48.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 524.577/600.0
2026-01-22T01:48:49.704 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:49.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:48:49.721 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:49.721 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:48:50.948 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 522.557/600.0
2026-01-22T01:48:52.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:52.743 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:48:52.743 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:52.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:48:53.006 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 520.504/600.0
2026-01-22T01:48:55.043 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 518.446/600.0
2026-01-22T01:48:55.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:48:55.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:55.747 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99899999999997
2026-01-22T01:48:55.747 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:55.747 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:48:57.091 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 516.409/600.0
2026-01-22T01:48:58.751 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:48:58.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:48:58.768 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:48:58.768 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:48:59.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 514.362/600.0
2026-01-22T01:49:01.213 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 512.305/600.0
2026-01-22T01:49:01.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:01.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:49:01.772 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:01.772 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:49:03.255 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 510.239/600.0
2026-01-22T01:49:04.773 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:04.794 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.00000000000003
2026-01-22T01:49:04.794 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:04.795 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:49:05.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:49:05.308 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 508.197/600.0
2026-01-22T01:49:07.361 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 506.144/600.0
2026-01-22T01:49:07.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:07.817 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.99899999999997
2026-01-22T01:49:07.817 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:07.817 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:49:09.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 504.092/600.0
2026-01-22T01:49:10.820 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:10.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-22T01:49:10.837 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:10.837 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:11.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 502.045/600.0
2026-01-22T01:49:13.525 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 499.97/600.0
2026-01-22T01:49:13.840 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:13.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.0
2026-01-22T01:49:13.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:13.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:49:15.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:49:15.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 497.929/600.0
2026-01-22T01:49:16.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:16.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.998
2026-01-22T01:49:16.845 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:16.845 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:17.587 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 495.896/600.0
2026-01-22T01:49:19.629 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 493.865/600.0
2026-01-22T01:49:19.848 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:19.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:49:19.849 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:19.849 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:21.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 491.824/600.0
2026-01-22T01:49:22.850 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:22.869 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:49:22.869 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:22.869 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:49:23.757 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 489.743/600.0
2026-01-22T01:49:25.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:49:25.777 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 487.696/600.0
2026-01-22T01:49:25.872 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:25.894 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T01:49:25.894 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:25.894 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:27.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 485.675/600.0
2026-01-22T01:49:28.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:28.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:49:28.919 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:28.919 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:29.904 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 483.612/600.0
2026-01-22T01:49:31.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:31.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-22T01:49:31.922 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:31.922 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:49:31.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 481.55/600.0
2026-01-22T01:49:34.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 479.507/600.0
2026-01-22T01:49:34.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:34.950 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.001
2026-01-22T01:49:34.950 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:34.950 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:49:35.243 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:49:36.062 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 477.449/600.0
2026-01-22T01:49:37.953 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:37.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:49:37.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:37.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:38.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 475.39/600.0
2026-01-22T01:49:40.210 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 473.322/600.0
2026-01-22T01:49:40.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:40.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:49:40.979 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:40.979 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:49:42.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 471.244/600.0
2026-01-22T01:49:43.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:44.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:49:44.000 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:44.000 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:44.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 469.19/600.0
2026-01-22T01:49:45.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:49:45.275 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:49:26.716781
2026-01-22T01:49:45.275 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:49:26.716781
2026-01-22T01:49:45.275 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:49:45.275 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:49:45.275 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:49:45.275 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:49:45&start_after=2026-01-20T23:49:45&end_after=2026-01-21T23:49:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:49:45.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:49:45.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:49:45.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:49:45.388 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:49:45.389 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:49:45.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:49:45.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:49:45.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:49:45.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:49:45.395 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:49:45.395 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:49:45.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:49:45.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:49:45.395 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1344.604692
2026-01-22T01:49:45.395 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:49:46.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 467.18/600.0
2026-01-22T01:49:47.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:47.023 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-22T01:49:47.023 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:47.023 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:49:48.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 465.132/600.0
2026-01-22T01:49:50.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:50.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:49:50.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:50.027 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:50.372 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 463.118/600.0
2026-01-22T01:49:52.425 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 461.08/600.0
2026-01-22T01:49:53.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:53.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:49:53.049 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:53.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:54.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:49:54.483 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 459.029/600.0
2026-01-22T01:49:56.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:56.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:49:56.062 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:56.062 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:49:56.509 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 456.97/600.0
2026-01-22T01:49:58.540 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 454.943/600.0
2026-01-22T01:49:59.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:49:59.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:49:59.086 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:49:59.086 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:50:00.571 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 452.912/600.0
2026-01-22T01:50:02.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:02.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:50:02.106 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:02.106 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:02.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 450.881/600.0
2026-01-22T01:50:04.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:50:04.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 448.855/600.0
2026-01-22T01:50:05.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:05.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:50:05.125 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:05.125 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:06.692 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 446.808/600.0
2026-01-22T01:50:08.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:08.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:50:08.129 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:08.129 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:50:08.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 444.761/600.0
2026-01-22T01:50:10.744 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 442.741/600.0
2026-01-22T01:50:11.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:11.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:50:11.148 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:11.148 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:12.802 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 440.709/600.0
2026-01-22T01:50:14.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:14.149 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:50:14.150 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:14.150 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:14.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:50:14.844 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 438.65/600.0
2026-01-22T01:50:16.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 436.608/600.0
2026-01-22T01:50:17.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:17.171 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:50:17.171 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:17.171 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:50:18.966 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 434.544/600.0
2026-01-22T01:50:20.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:20.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.99899999999997
2026-01-22T01:50:20.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:20.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:50:21.034 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 432.486/600.0
2026-01-22T01:50:23.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 430.418/600.0
2026-01-22T01:50:23.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:23.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00100000000003
2026-01-22T01:50:23.213 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:23.213 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:50:24.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:50:25.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 428.365/600.0
2026-01-22T01:50:26.216 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:26.217 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.001
2026-01-22T01:50:26.217 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:26.217 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:50:27.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 426.34/600.0
2026-01-22T01:50:29.220 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:29.229 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 424.282/600.0
2026-01-22T01:50:29.235 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:50:29.235 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:29.235 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:31.309 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 422.223/600.0
2026-01-22T01:50:32.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:32.238 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:50:32.238 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:32.238 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:33.356 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 420.144/600.0
2026-01-22T01:50:34.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:50:35.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:35.241 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:50:35.241 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:35.242 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:35.382 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 418.096/600.0
2026-01-22T01:50:37.434 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 416.071/600.0
2026-01-22T01:50:38.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:38.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:50:38.246 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:38.246 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:50:39.470 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 414.018/600.0
2026-01-22T01:50:41.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:41.271 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:50:41.271 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:41.271 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:50:41.533 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 411.982/600.0
2026-01-22T01:50:43.586 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 409.919/600.0
2026-01-22T01:50:44.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:44.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:50:44.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:44.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:50:44.447 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:50:44.448 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:50:26.918801
2026-01-22T01:50:44.448 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:50:26.918801
2026-01-22T01:50:44.448 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:50:44.448 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:50:44.448 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:50:44.448 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:50:44&start_after=2026-01-20T23:50:44&end_after=2026-01-21T23:50:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:50:44.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:50:44.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:50:44.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:50:44.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:50:44.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:50:44.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:50:44.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:50:44.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:50:44.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:50:44.569 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:50:44.569 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:50:44.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:50:44.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:50:44.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1285.430452
2026-01-22T01:50:44.569 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:50:45.607 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 407.866/600.0
2026-01-22T01:50:47.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:47.296 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T01:50:47.296 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:47.296 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:50:47.643 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 405.846/600.0
2026-01-22T01:50:49.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 403.81/600.0
2026-01-22T01:50:50.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:50.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-22T01:50:50.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:50.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:50:51.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 401.778/600.0
2026-01-22T01:50:53.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:53.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99900000000002
2026-01-22T01:50:53.321 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:53.321 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:50:53.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:50:53.769 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 399.736/600.0
2026-01-22T01:50:55.800 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 397.683/600.0
2026-01-22T01:50:56.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:56.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.00099999999998
2026-01-22T01:50:56.346 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:56.346 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:50:57.848 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 395.652/600.0
2026-01-22T01:50:59.349 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:50:59.366 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.998
2026-01-22T01:50:59.366 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:50:59.366 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:50:59.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 393.605/600.0
2026-01-22T01:51:01.921 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 391.557/600.0
2026-01-22T01:51:02.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:02.369 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-22T01:51:02.370 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:02.370 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:51:03.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:51:03.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 389.532/600.0
2026-01-22T01:51:05.373 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:05.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99900000000002
2026-01-22T01:51:05.393 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:05.393 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:51:06.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 387.478/600.0
2026-01-22T01:51:08.070 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 385.415/600.0
2026-01-22T01:51:08.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:08.394 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00099999999998
2026-01-22T01:51:08.394 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:08.394 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:51:10.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 383.382/600.0
2026-01-22T01:51:11.397 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:11.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:51:11.417 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:11.417 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:12.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 381.335/600.0
2026-01-22T01:51:13.596 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:51:14.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 379.271/600.0
2026-01-22T01:51:14.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:14.439 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:51:14.439 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:14.439 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:16.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 377.229/600.0
2026-01-22T01:51:17.441 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:17.463 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:51:17.463 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:17.463 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:18.328 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 375.182/600.0
2026-01-22T01:51:20.370 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 373.124/600.0
2026-01-22T01:51:20.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:20.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:51:20.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:20.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:22.412 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 371.083/600.0
2026-01-22T01:51:23.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:23.486 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:51:23.486 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:23.486 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:23.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:51:24.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 369.042/600.0
2026-01-22T01:51:26.489 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:26.490 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:51:26.490 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:26.490 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:51:26.497 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 366.998/600.0
2026-01-22T01:51:28.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 364.956/600.0
2026-01-22T01:51:29.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:29.510 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00000000000003
2026-01-22T01:51:29.510 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:29.510 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:51:30.603 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 362.909/600.0
2026-01-22T01:51:32.513 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:32.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:51:32.531 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:32.531 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:32.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 360.85/600.0
2026-01-22T01:51:33.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:51:34.677 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 358.809/600.0
2026-01-22T01:51:35.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:35.553 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:51:35.553 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:35.553 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:36.719 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 356.776/600.0
2026-01-22T01:51:38.556 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:38.557 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:51:38.557 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:38.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:51:38.739 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 354.734/600.0
2026-01-22T01:51:40.765 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 352.713/600.0
2026-01-22T01:51:41.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:41.581 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:51:41.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:41.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:51:42.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 350.687/600.0
2026-01-22T01:51:43.619 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:51:43.636 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:51:27.119401
2026-01-22T01:51:43.636 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:51:27.119401
2026-01-22T01:51:43.636 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:51:43.636 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:51:43.636 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:51:43.636 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:51:43&start_after=2026-01-20T23:51:43&end_after=2026-01-21T23:51:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:51:43.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:51:43.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:51:43.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:51:43.773 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:51:43.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:51:43.775 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:51:43.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:51:43.777 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:51:43.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:51:43.780 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:51:43.780 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:51:43.780 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:51:43.780 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:51:43.780 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1226.219813
2026-01-22T01:51:43.780 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T01:51:44.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:44.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:51:44.585 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:44.585 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:51:44.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 348.64/600.0
2026-01-22T01:51:46.923 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 346.576/600.0
2026-01-22T01:51:47.588 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:47.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.999
2026-01-22T01:51:47.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:47.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:51:48.982 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 344.529/600.0
2026-01-22T01:51:50.608 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:50.627 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99899999999997
2026-01-22T01:51:50.627 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:50.627 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:51:51.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 342.47/600.0
2026-01-22T01:51:52.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:51:53.100 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 340.394/600.0
2026-01-22T01:51:53.630 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:53.648 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00099999999998
2026-01-22T01:51:53.649 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:53.649 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:51:55.127 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 338.353/600.0
2026-01-22T01:51:56.652 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:56.654 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-22T01:51:56.654 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:56.654 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:51:57.158 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 336.325/600.0
2026-01-22T01:51:59.211 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 334.294/600.0
2026-01-22T01:51:59.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:51:59.680 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-22T01:51:59.680 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:51:59.680 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:52:01.286 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 332.242/600.0
2026-01-22T01:52:02.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:02.683 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:52:02.683 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:02.683 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:02.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:52:03.353 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 330.166/600.0
2026-01-22T01:52:05.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 328.099/600.0
2026-01-22T01:52:05.686 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:05.708 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:52:05.708 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:05.708 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:07.477 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 326.039/600.0
2026-01-22T01:52:08.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:08.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:52:08.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:08.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:52:09.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 323.975/600.0
2026-01-22T01:52:11.614 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 321.895/600.0
2026-01-22T01:52:11.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:11.736 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:52:11.737 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:11.737 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:52:12.809 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:52:13.667 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 319.837/600.0
2026-01-22T01:52:14.740 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:14.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00100000000003
2026-01-22T01:52:14.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:14.743 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:52:15.720 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 317.784/600.0
2026-01-22T01:52:17.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:17.766 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-22T01:52:17.767 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:17.767 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:52:17.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 315.733/600.0
2026-01-22T01:52:19.831 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 313.673/600.0
2026-01-22T01:52:20.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:20.771 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.99900000000002
2026-01-22T01:52:20.771 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:20.771 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:52:21.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 311.622/600.0
2026-01-22T01:52:22.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:52:23.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:23.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00099999999998
2026-01-22T01:52:23.797 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:23.797 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:23.963 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 309.575/600.0
2026-01-22T01:52:25.994 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 307.489/600.0
2026-01-22T01:52:26.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:26.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:52:26.821 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:26.821 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:52:28.057 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 305.457/600.0
2026-01-22T01:52:29.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:29.826 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99899999999997
2026-01-22T01:52:29.827 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:29.827 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:30.095 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 303.395/600.0
2026-01-22T01:52:32.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 301.357/600.0
2026-01-22T01:52:32.830 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:32.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:52:32.855 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:52:32.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:32.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:34.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 299.325/600.0
2026-01-22T01:52:35.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:35.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:52:35.861 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:35.861 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:36.227 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 297.279/600.0
2026-01-22T01:52:38.259 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 295.225/600.0
2026-01-22T01:52:38.864 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:38.887 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:52:38.888 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:38.888 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:52:40.317 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 293.193/600.0
2026-01-22T01:52:41.891 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:41.912 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 179.99999999999997
2026-01-22T01:52:41.913 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:41.913 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:52:42.386 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 291.134/600.0
2026-01-22T01:52:42.838 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:52:42.840 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:52:27.319032
2026-01-22T01:52:42.841 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:52:27.319032
2026-01-22T01:52:42.841 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:52:42.841 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:52:42.842 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:52:42.842 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:52:42&start_after=2026-01-20T23:52:42&end_after=2026-01-21T23:52:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:52:42.959 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:52:42.963 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:52:42.966 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:52:42.974 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:52:42.982 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:52:42.984 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:52:42.988 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:52:42.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:52:42.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1167.003571
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:52:42.996505    Obs time: 2026-01-22 00:12:10
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:19:27.003495
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1167
2026-01-22T01:52:42.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:52:44.423 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 289.065/600.0
2026-01-22T01:52:44.916 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:44.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.001
2026-01-22T01:52:44.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:44.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:52:46.471 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 287.029/600.0
2026-01-22T01:52:47.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:47.943 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:52:47.943 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:47.943 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:48.529 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 284.981/600.0
2026-01-22T01:52:50.575 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 282.923/600.0
2026-01-22T01:52:50.945 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:50.967 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:52:50.967 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:50.967 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:52.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:52:52.633 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 280.877/600.0
2026-01-22T01:52:53.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:53.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:52:53.970 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:53.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:52:54.670 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 278.819/600.0
2026-01-22T01:52:56.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 276.782/600.0
2026-01-22T01:52:56.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:52:56.989 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.0
2026-01-22T01:52:56.989 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:52:56.989 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:52:58.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 274.726/600.0
2026-01-22T01:52:59.992 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:00.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.998
2026-01-22T01:53:00.007 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:00.007 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:00.850 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 272.698/600.0
2026-01-22T01:53:02.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:53:02.909 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 270.604/600.0
2026-01-22T01:53:03.010 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:03.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:53:03.025 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:03.025 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:04.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 268.545/600.0
2026-01-22T01:53:06.025 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:06.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:53:06.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:06.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:53:07.036 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 266.469/600.0
2026-01-22T01:53:09.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:09.045 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T01:53:09.045 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:09.045 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:53:09.089 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 264.418/600.0
2026-01-22T01:53:11.142 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 262.363/600.0
2026-01-22T01:53:12.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:53:12.046 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:12.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00000000000003
2026-01-22T01:53:12.047 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:12.047 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:53:13.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 260.31/600.0
2026-01-22T01:53:15.049 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:15.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:53:15.065 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:15.065 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:15.323 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 258.236/600.0
2026-01-22T01:53:17.392 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 256.13/600.0
2026-01-22T01:53:18.067 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:18.086 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T01:53:18.086 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:18.086 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:53:19.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 254.06/600.0
2026-01-22T01:53:21.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:21.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99800000000002. Last known sky angle: 179.99999999999997
2026-01-22T01:53:21.106 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:21.106 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99800000000002
2026-01-22T01:53:21.487 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 252.024/600.0
2026-01-22T01:53:22.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:53:23.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 249.965/600.0
2026-01-22T01:53:24.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:24.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99800000000002
2026-01-22T01:53:24.110 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:24.110 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:25.615 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 247.891/600.0
2026-01-22T01:53:27.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:27.131 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:53:27.131 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:27.131 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:27.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 245.837/600.0
2026-01-22T01:53:29.732 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 243.784/600.0
2026-01-22T01:53:30.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:30.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:53:30.134 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:30.134 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:31.807 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 241.721/600.0
2026-01-22T01:53:32.041 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:53:33.137 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:33.152 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T01:53:33.152 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:33.152 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:53:33.843 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 239.646/600.0
2026-01-22T01:53:35.929 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 237.61/600.0
2026-01-22T01:53:36.153 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:36.172 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00000000000003
2026-01-22T01:53:36.172 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:36.172 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:53:37.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 235.523/600.0
2026-01-22T01:53:39.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:39.192 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:53:39.192 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:39.192 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:40.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 233.482/600.0
2026-01-22T01:53:42.049 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:53:42.050 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:53:27.522014
2026-01-22T01:53:42.050 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:53:27.522014
2026-01-22T01:53:42.050 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:53:42.050 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:53:42.050 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:53:42.050 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:53:42&start_after=2026-01-20T23:53:42&end_after=2026-01-21T23:53:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:53:42.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 231.445/600.0
2026-01-22T01:53:42.156 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:53:42.157 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:53:42.157 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:53:42.158 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:53:42.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:53:42.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:53:42.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:53:42.163 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:53:42.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:53:42.165 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1107.833871
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:53:42.166161    Obs time: 2026-01-22 00:12:10
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:18:27.833839
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1107
2026-01-22T01:53:42.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:53:42.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:42.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.997. Last known sky angle: 180.0
2026-01-22T01:53:42.194 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:42.194 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.997
2026-01-22T01:53:44.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 229.339/600.0
2026-01-22T01:53:45.197 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:45.218 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.997
2026-01-22T01:53:45.218 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:45.218 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:53:46.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 227.248/600.0
2026-01-22T01:53:48.221 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:48.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:53:48.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:48.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:53:48.320 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 225.185/600.0
2026-01-22T01:53:50.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 223.133/600.0
2026-01-22T01:53:51.174 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:53:51.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:51.247 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.999
2026-01-22T01:53:51.247 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:51.247 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:53:52.373 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 221.112/600.0
2026-01-22T01:53:54.249 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:54.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99699999999996. Last known sky angle: 179.999
2026-01-22T01:53:54.250 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:54.250 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99699999999996
2026-01-22T01:53:54.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 219.079/600.0
2026-01-22T01:53:56.479 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 217.037/600.0
2026-01-22T01:53:57.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:53:57.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 179.99699999999996
2026-01-22T01:53:57.254 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:53:57.254 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:53:58.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 214.974/600.0
2026-01-22T01:54:00.257 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:00.272 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.001
2026-01-22T01:54:00.272 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:00.272 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:54:00.584 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 212.932/600.0
2026-01-22T01:54:01.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:54:02.648 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 210.87/600.0
2026-01-22T01:54:03.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:03.274 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00099999999998
2026-01-22T01:54:03.274 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:03.274 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:54:04.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 208.806/600.0
2026-01-22T01:54:06.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:06.298 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:54:06.298 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:06.298 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:54:06.721 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 206.785/600.0
2026-01-22T01:54:08.785 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 204.733/600.0
2026-01-22T01:54:09.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:09.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:54:09.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:09.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:10.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 202.669/600.0
2026-01-22T01:54:11.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:54:12.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:12.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:54:12.325 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:12.325 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:54:12.965 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 200.583/600.0
2026-01-22T01:54:15.077 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 198.488/600.0
2026-01-22T01:54:15.325 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:15.326 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:54:15.326 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:15.326 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:17.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 196.376/600.0
2026-01-22T01:54:18.329 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:18.346 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.0
2026-01-22T01:54:18.347 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:18.347 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:54:19.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 194.322/600.0
2026-01-22T01:54:21.194 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:54:21.204 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 192.29/600.0
2026-01-22T01:54:21.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:21.350 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.998
2026-01-22T01:54:21.351 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:21.351 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:54:23.268 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 190.249/600.0
2026-01-22T01:54:24.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:24.375 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.997. Last known sky angle: 180.00100000000003
2026-01-22T01:54:24.375 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:24.375 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.997
2026-01-22T01:54:25.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 188.184/600.0
2026-01-22T01:54:27.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:27.378 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.997
2026-01-22T01:54:27.378 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:27.378 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:27.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 186.125/600.0
2026-01-22T01:54:29.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 184.061/600.0
2026-01-22T01:54:30.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:30.404 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:54:30.404 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:30.404 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:54:31.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:54:31.486 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 182.019/600.0
2026-01-22T01:54:33.405 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:33.406 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T01:54:33.406 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:33.406 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:33.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 179.966/600.0
2026-01-22T01:54:35.641 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 177.897/600.0
2026-01-22T01:54:36.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:36.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:54:36.426 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:36.426 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:37.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 175.811/600.0
2026-01-22T01:54:39.429 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:39.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.0
2026-01-22T01:54:39.430 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:39.430 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:54:39.758 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 173.742/600.0
2026-01-22T01:54:41.213 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:54:41.234 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:54:27.722450
2026-01-22T01:54:41.235 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:54:27.722450
2026-01-22T01:54:41.235 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:54:41.235 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:54:41.235 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:54:41.235 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:54:41&start_after=2026-01-20T23:54:41&end_after=2026-01-21T23:54:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:54:41.345 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:54:41.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:54:41.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:54:41.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:54:41.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:54:41.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:54:41.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:54:41.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:54:41.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 1048.644496
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:54:41.355538    Obs time: 2026-01-22 00:12:10
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:17:28.644462
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  1048
2026-01-22T01:54:41.355 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:54:41.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 171.694/600.0
2026-01-22T01:54:42.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:42.448 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.001
2026-01-22T01:54:42.448 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:42.448 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:43.864 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 169.646/600.0
2026-01-22T01:54:45.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:45.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.996. Last known sky angle: 180.0
2026-01-22T01:54:45.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:45.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.996
2026-01-22T01:54:45.949 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 167.588/600.0
2026-01-22T01:54:48.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 165.503/600.0
2026-01-22T01:54:48.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:48.492 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.996
2026-01-22T01:54:48.492 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:48.492 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:50.055 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 163.445/600.0
2026-01-22T01:54:50.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:54:51.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:51.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:54:51.494 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:51.494 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:54:52.118 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 161.398/600.0
2026-01-22T01:54:54.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 159.334/600.0
2026-01-22T01:54:54.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:54.516 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:54:54.516 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:54.516 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:54:56.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 157.281/600.0
2026-01-22T01:54:57.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:54:57.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99900000000002
2026-01-22T01:54:57.518 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:54:57.518 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:54:58.282 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 155.246/600.0
2026-01-22T01:55:00.324 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 153.17/600.0
2026-01-22T01:55:00.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:55:00.521 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:00.539 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.99900000000002
2026-01-22T01:55:00.539 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:00.539 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:55:02.366 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 151.128/600.0
2026-01-22T01:55:03.542 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:03.564 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00100000000003
2026-01-22T01:55:03.564 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:03.564 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:55:04.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 149.086/600.0
2026-01-22T01:55:06.461 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 147.071/600.0
2026-01-22T01:55:06.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:06.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:55:06.586 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:06.586 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:55:08.590 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 144.991/600.0
2026-01-22T01:55:09.589 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:09.590 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:55:09.590 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:09.590 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:55:10.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:55:10.632 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 142.865/600.0
2026-01-22T01:55:12.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:12.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:55:12.613 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:12.613 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:55:12.674 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 140.82/600.0
2026-01-22T01:55:14.743 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 138.78/600.0
2026-01-22T01:55:15.616 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:15.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99599999999998. Last known sky angle: 179.99899999999997
2026-01-22T01:55:15.617 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:15.617 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99599999999998
2026-01-22T01:55:16.812 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 136.71/600.0
2026-01-22T01:55:18.617 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:18.636 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99599999999998
2026-01-22T01:55:18.636 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:18.636 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:55:18.876 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 134.641/600.0
2026-01-22T01:55:20.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:55:20.934 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 132.578/600.0
2026-01-22T01:55:21.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:21.653 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00000000000003
2026-01-22T01:55:21.653 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:21.653 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:55:23.025 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 130.518/600.0
2026-01-22T01:55:24.656 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:24.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99900000000002
2026-01-22T01:55:24.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:24.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:55:25.083 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 128.427/600.0
2026-01-22T01:55:27.131 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 126.369/600.0
2026-01-22T01:55:27.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:27.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99599999999998. Last known sky angle: 179.99900000000002
2026-01-22T01:55:27.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:27.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99599999999998
2026-01-22T01:55:29.162 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 124.322/600.0
2026-01-22T01:55:30.400 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:55:30.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:30.665 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.99599999999998
2026-01-22T01:55:30.665 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:30.665 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:55:31.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 122.29/600.0
2026-01-22T01:55:33.263 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 120.233/600.0
2026-01-22T01:55:33.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:33.688 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.00100000000003
2026-01-22T01:55:33.688 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:33.688 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:55:35.343 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 118.189/600.0
2026-01-22T01:55:36.689 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:36.709 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.998
2026-01-22T01:55:36.709 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:36.709 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:55:37.380 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 116.11/600.0
2026-01-22T01:55:39.454 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 114.073/600.0
2026-01-22T01:55:39.712 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:39.734 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 179.99899999999997
2026-01-22T01:55:39.734 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:39.734 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:55:40.410 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:55:40.411 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:55:27.928558
2026-01-22T01:55:40.412 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:55:27.928558
2026-01-22T01:55:40.412 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:55:40.412 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:55:40.412 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:55:40.412 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:55:40&start_after=2026-01-20T23:55:40&end_after=2026-01-21T23:55:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:55:40.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:55:40.521 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:55:40.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:55:40.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:55:40.524 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:55:40.526 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:55:40.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:55:40.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:55:40.529 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 989.469233
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:55:40.530799    Obs time: 2026-01-22 00:12:10
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:16:29.469201
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  989
2026-01-22T01:55:40.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:55:41.496 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.998/600.0
2026-01-22T01:55:42.738 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:42.739 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00199999999998. Last known sky angle: 179.998
2026-01-22T01:55:42.739 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:42.739 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00199999999998
2026-01-22T01:55:43.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.958/600.0
2026-01-22T01:55:45.666 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.855/600.0
2026-01-22T01:55:45.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:45.760 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00199999999998
2026-01-22T01:55:45.760 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:45.760 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:55:47.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.786/600.0
2026-01-22T01:55:48.764 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:48.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 180.00000000000003
2026-01-22T01:55:48.765 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:48.765 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:55:49.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:55:49.761 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.75/600.0
2026-01-22T01:55:51.768 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:51.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00100000000003
2026-01-22T01:55:51.786 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:51.786 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:55:51.819 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.691/600.0
2026-01-22T01:55:53.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.633/600.0
2026-01-22T01:55:54.789 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:54.790 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99900000000002
2026-01-22T01:55:54.790 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:54.790 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:55:55.920 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.575/600.0
2026-01-22T01:55:57.793 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:55:57.808 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.00000000000003
2026-01-22T01:55:57.842 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:55:57.842 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:55:57.983 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.533/600.0
2026-01-22T01:55:59.543 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:56:00.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.47/600.0
2026-01-22T01:56:00.845 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:00.846 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.995. Last known sky angle: 179.998
2026-01-22T01:56:00.846 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:00.846 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.995
2026-01-22T01:56:02.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.406/600.0
2026-01-22T01:56:03.849 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:03.870 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.995
2026-01-22T01:56:03.870 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:03.870 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:56:04.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.32/600.0
2026-01-22T01:56:06.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 87.261/600.0
2026-01-22T01:56:06.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:06.874 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.0
2026-01-22T01:56:06.874 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:06.874 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:56:08.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 85.176/600.0
2026-01-22T01:56:09.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:56:09.877 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:09.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.998
2026-01-22T01:56:09.893 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:09.893 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:56:10.398 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 83.134/600.0
2026-01-22T01:56:12.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 81.055/600.0
2026-01-22T01:56:12.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:12.898 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99900000000002
2026-01-22T01:56:12.898 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:12.898 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:56:14.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.998/600.0
2026-01-22T01:56:15.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:15.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T01:56:15.917 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:15.917 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:56:16.562 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.954/600.0
2026-01-22T01:56:18.647 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.891/600.0
2026-01-22T01:56:18.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:18.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.0
2026-01-22T01:56:18.941 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:18.941 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:56:19.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:56:20.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.806/600.0
2026-01-22T01:56:21.942 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:21.961 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.997. Last known sky angle: 179.99900000000002
2026-01-22T01:56:21.961 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:21.961 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.997
2026-01-22T01:56:22.784 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.704/600.0
2026-01-22T01:56:24.842 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.67/600.0
2026-01-22T01:56:24.964 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:24.965 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.997
2026-01-22T01:56:24.965 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:24.965 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:56:26.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.61/600.0
2026-01-22T01:56:27.968 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:27.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.987. Last known sky angle: 179.99900000000002
2026-01-22T01:56:27.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:27.969 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.987
2026-01-22T01:56:29.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.498/600.0
2026-01-22T01:56:29.565 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:56:30.972 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:30.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 179.987
2026-01-22T01:56:30.973 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:30.973 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:56:31.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.45/600.0
2026-01-22T01:56:33.092 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.403/600.0
2026-01-22T01:56:33.976 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:33.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 179.998
2026-01-22T01:56:33.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:33.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:56:35.193 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.36/600.0
2026-01-22T01:56:37.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:37.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.003. Last known sky angle: 179.998
2026-01-22T01:56:37.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:37.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.003
2026-01-22T01:56:37.246 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.261/600.0
2026-01-22T01:56:39.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.206/600.0
2026-01-22T01:56:39.574 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:56:39.594 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:56:28.130543
2026-01-22T01:56:39.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:56:28.130543
2026-01-22T01:56:39.594 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:56:39.594 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:56:39.594 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:56:39.594 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:56:39&start_after=2026-01-20T23:56:39&end_after=2026-01-21T23:56:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:56:39.704 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:56:39.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:56:39.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:56:39.706 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:56:39.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:56:39.709 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:56:39.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:56:39.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:56:39.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 930.28544
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:56:39.714593    Obs time: 2026-01-22 00:12:10
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:15:30.285407
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  930
2026-01-22T01:56:39.714 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:56:40.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:40.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.003
2026-01-22T01:56:40.005 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:40.005 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:56:41.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.15/600.0
2026-01-22T01:56:43.007 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:43.008 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 179.99900000000002
2026-01-22T01:56:43.008 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:43.008 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T01:56:43.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.022/600.0
2026-01-22T01:56:45.565 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 47.951/600.0
2026-01-22T01:56:46.009 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:46.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.001
2026-01-22T01:56:46.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:46.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:56:47.618 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 45.887/600.0
2026-01-22T01:56:48.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:56:49.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:49.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.99900000000002
2026-01-22T01:56:49.030 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:49.030 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:56:49.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.836/600.0
2026-01-22T01:56:51.767 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.75/600.0
2026-01-22T01:56:52.033 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:52.051 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99099999999999. Last known sky angle: 179.99899999999997
2026-01-22T01:56:52.051 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:52.051 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99099999999999
2026-01-22T01:56:53.841 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.686/600.0
2026-01-22T01:56:55.054 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:55.055 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99099999999999
2026-01-22T01:56:55.055 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:55.055 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:56:55.910 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.611/600.0
2026-01-22T01:56:57.969 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.542/600.0
2026-01-22T01:56:58.057 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:56:58.076 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 180.0
2026-01-22T01:56:58.076 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:56:58.076 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:56:58.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:57:00.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.485/600.0
2026-01-22T01:57:01.079 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:01.080 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99899999999997
2026-01-22T01:57:01.080 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:01.080 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:57:02.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.416/600.0
2026-01-22T01:57:04.083 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:04.103 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99099999999999. Last known sky angle: 179.99900000000002
2026-01-22T01:57:04.103 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:04.103 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99099999999999
2026-01-22T01:57:04.198 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.346/600.0
2026-01-22T01:57:06.218 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.255/600.0
2026-01-22T01:57:07.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:07.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99099999999999
2026-01-22T01:57:07.105 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:07.105 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:57:08.276 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.235/600.0
2026-01-22T01:57:08.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:57:10.107 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:10.125 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T01:57:10.125 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:10.125 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:57:10.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.177/600.0
2026-01-22T01:57:12.350 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.134/600.0
2026-01-22T01:57:13.127 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:13.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T01:57:13.128 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:13.128 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:57:14.381 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.102/600.0
2026-01-22T01:57:16.129 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:16.147 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.999
2026-01-22T01:57:16.147 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:16.147 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:57:16.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.071/600.0
2026-01-22T01:57:18.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.023/600.0
2026-01-22T01:57:18.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:57:19.150 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:19.151 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00599999999997. Last known sky angle: 179.999
2026-01-22T01:57:19.151 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:19.151 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00599999999997
2026-01-22T01:57:20.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 12.949/600.0
2026-01-22T01:57:22.154 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:22.173 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.003. Last known sky angle: 180.00599999999997
2026-01-22T01:57:22.173 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:22.173 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.003
2026-01-22T01:57:22.642 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 10.879/600.0
2026-01-22T01:57:24.711 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 8.81/600.0
2026-01-22T01:57:25.176 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:25.177 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.998. Last known sky angle: 180.003
2026-01-22T01:57:25.177 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:25.177 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.998
2026-01-22T01:57:26.770 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 6.741/600.0
2026-01-22T01:57:28.180 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:28.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.998
2026-01-22T01:57:28.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:28.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:57:28.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:57:28.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 4.682/600.0
2026-01-22T01:57:30.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 2.635/600.0
2026-01-22T01:57:31.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:31.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.98899999999998. Last known sky angle: 179.99999999999997
2026-01-22T01:57:31.202 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:31.202 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.98899999999998
2026-01-22T01:57:32.901 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.594/600.0
2026-01-22T01:57:34.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:34.206 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99899999999997. Last known sky angle: 179.98899999999998
2026-01-22T01:57:34.206 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:34.206 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99899999999997
2026-01-22T01:57:34.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:37.001 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:37.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:37.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.987. Last known sky angle: 179.99899999999997
2026-01-22T01:57:37.231 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:37.231 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.987
2026-01-22T01:57:38.765 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:57:38.784 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:57:28.376127
2026-01-22T01:57:38.784 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:57:28.376127
2026-01-22T01:57:38.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:57:38.784 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:57:38.784 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:57:38.784 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:57:38&start_after=2026-01-20T23:57:38&end_after=2026-01-21T23:57:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:57:38.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:57:38.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:57:38.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:57:38.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:57:38.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:57:38.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:57:38.903 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:57:38.904 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:57:38.905 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 871.09307
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:57:38.906962    Obs time: 2026-01-22 00:12:10
2026-01-22T01:57:38.906 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:14:31.093038
2026-01-22T01:57:38.907 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  871
2026-01-22T01:57:38.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:57:39.064 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:40.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:40.251 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.987
2026-01-22T01:57:40.251 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:40.251 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T01:57:41.101 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:43.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:43.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:43.273 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.98399999999998. Last known sky angle: 179.99999999999997
2026-01-22T01:57:43.273 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:43.273 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.98399999999998
2026-01-22T01:57:45.180 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:46.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:46.277 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.995. Last known sky angle: 179.98399999999998
2026-01-22T01:57:46.277 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:46.277 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.995
2026-01-22T01:57:47.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:47.914 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:57:49.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:49.278 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:49.297 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.995
2026-01-22T01:57:49.297 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:49.297 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:57:51.339 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:52.300 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:52.301 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00300000000001. Last known sky angle: 179.99900000000002
2026-01-22T01:57:52.301 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:52.301 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00300000000001
2026-01-22T01:57:53.397 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:55.304 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:57:55.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.984. Last known sky angle: 180.00300000000001
2026-01-22T01:57:55.324 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:57:55.324 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.984
2026-01-22T01:57:55.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 1/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/600.0
2026-01-22T01:57:57.211 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:57:57.211 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:57:57.234 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:57:57.922 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:57:58.327 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:57:58.327 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 5
2026-01-22T01:57:58.327 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 5: 2
2026-01-22T01:57:58.327 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:57:58.327 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:57:58.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:57:58.327 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:57:58.328 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:57:58.328 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:57:58.328 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:57:58.328 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:57:58.337 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:57:58.338 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:57:58.338 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 2
2026-01-22T01:57:58.338 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:2
2026-01-22T01:57:58.338 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 2
2026-01-22T01:57:58.534 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 1
2026-01-22T01:57:59.554 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 2
2026-01-22T01:58:00.574 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 3
2026-01-22T01:58:01.595 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 4
2026-01-22T01:58:02.615 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 2 : try 5
2026-01-22T01:58:03.684 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 2 successfully
2026-01-22T01:58:04.685 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:58:04.699 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T01:58:05.700 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:58:05.701 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.08
2026-01-22T01:58:05.701 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:55:01
2026-01-22T01:58:05.701 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:55:01
2026-01-22T01:58:05.701 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2602
2026-01-22T01:58:05.701 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09087275590551179
2026-01-22T01:58:05.704 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 2
2026-01-22T01:58:05.704 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:58:05.704 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:58:05.704 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:58:05.752 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 2 successfully
2026-01-22T01:58:06.753 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:58:06.753 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:58:06.753 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:58:07.833 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:58:07.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:58:09.836 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:58:09.836 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:58:09.836 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:58:09.836 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:58:09.836 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:58:09.838 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:58:09.838 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:58:09.840 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:58:09.978 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:58:09.978 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:58:09.980 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039889.98023
2026-01-22T01:58:10.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:58:10.337 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:58:10.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:10.859 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.984. Last known sky angle: 179.99699999999996
2026-01-22T01:58:10.859 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:10.859 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.984
2026-01-22T01:58:13.862 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:13.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.997. Last known sky angle: 179.984
2026-01-22T01:58:13.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:13.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.997
2026-01-22T01:58:15.429 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.591/60.0
2026-01-22T01:58:16.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:16.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.98700000000002. Last known sky angle: 179.997
2026-01-22T01:58:16.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:16.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.98700000000002
2026-01-22T01:58:17.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.551/60.0
2026-01-22T01:58:17.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:58:19.490 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.522/60.0
2026-01-22T01:58:19.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:19.910 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.97500000000002. Last known sky angle: 179.98700000000002
2026-01-22T01:58:19.910 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:19.910 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.97500000000002
2026-01-22T01:58:21.520 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.49/60.0
2026-01-22T01:58:22.913 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:22.929 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.97500000000002
2026-01-22T01:58:22.929 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:22.929 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T01:58:23.551 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.462/60.0
2026-01-22T01:58:25.581 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.43/60.0
2026-01-22T01:58:25.930 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:25.931 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T01:58:25.931 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:25.932 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:58:27.612 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.399/60.0
2026-01-22T01:58:27.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:58:28.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:28.952 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.00099999999998
2026-01-22T01:58:28.952 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:28.952 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:58:29.642 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.37/60.0
2026-01-22T01:58:31.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.34/60.0
2026-01-22T01:58:31.955 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:31.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.96099999999998. Last known sky angle: 180.00099999999998
2026-01-22T01:58:31.956 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:31.956 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.96099999999998
2026-01-22T01:58:33.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.308/60.0
2026-01-22T01:58:34.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:34.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 179.96099999999998
2026-01-22T01:58:34.977 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:34.977 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T01:58:35.734 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.277/60.0
2026-01-22T01:58:37.764 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.247/60.0
2026-01-22T01:58:37.956 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:58:37.973 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:58:28.578574
2026-01-22T01:58:37.973 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:58:28.578574
2026-01-22T01:58:37.973 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:58:37.973 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:58:37.974 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:58:37.974 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:58:37&start_after=2026-01-20T23:58:37&end_after=2026-01-21T23:58:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:58:37.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:37.979 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00399999999996. Last known sky angle: 180.00099999999998
2026-01-22T01:58:37.979 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:37.979 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00399999999996
2026-01-22T01:58:38.082 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:58:38.084 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:58:38.085 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:58:38.087 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:58:38.087 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:58:38.089 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:58:38.090 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:58:38.091 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:58:38.092 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:58:38.093 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 811.905797
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:58:38.094236    Obs time: 2026-01-22 00:12:10
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:13:31.905764
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  811
2026-01-22T01:58:38.094 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:58:39.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.216/60.0
2026-01-22T01:58:40.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:41.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.996. Last known sky angle: 180.00399999999996
2026-01-22T01:58:41.000 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:41.000 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.996
2026-01-22T01:58:41.825 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.187/60.0
2026-01-22T01:58:43.855 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.156/60.0
2026-01-22T01:58:44.003 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:44.004 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.98499999999999. Last known sky angle: 179.996
2026-01-22T01:58:44.004 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:44.004 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.98499999999999
2026-01-22T01:58:45.886 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.126/60.0
2026-01-22T01:58:47.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:47.024 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.98499999999999
2026-01-22T01:58:47.024 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:47.024 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:58:47.099 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:58:47.916 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.095/60.0
2026-01-22T01:58:49.946 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.064/60.0
2026-01-22T01:58:50.027 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:50.027 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00500000000002. Last known sky angle: 179.999
2026-01-22T01:58:50.027 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:50.028 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00500000000002
2026-01-22T01:58:51.977 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.036/60.0
2026-01-22T01:58:53.031 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:53.053 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.988. Last known sky angle: 180.00500000000002
2026-01-22T01:58:53.053 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:53.053 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.988
2026-01-22T01:58:54.007 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.004/60.0
2026-01-22T01:58:56.038 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.973/60.0
2026-01-22T01:58:56.056 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:56.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00400000000002. Last known sky angle: 179.988
2026-01-22T01:58:56.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:56.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00400000000002
2026-01-22T01:58:57.109 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:58:58.068 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.942/60.0
2026-01-22T01:58:59.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:58:59.078 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.996. Last known sky angle: 180.00400000000002
2026-01-22T01:58:59.078 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:58:59.078 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.996
2026-01-22T01:59:00.099 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.912/60.0
2026-01-22T01:59:02.081 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:02.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.973. Last known sky angle: 179.996
2026-01-22T01:59:02.102 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:02.102 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.973
2026-01-22T01:59:02.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.882/60.0
2026-01-22T01:59:04.159 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.851/60.0
2026-01-22T01:59:05.105 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:05.106 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99499999999998. Last known sky angle: 179.973
2026-01-22T01:59:05.106 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:05.106 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99499999999998
2026-01-22T01:59:06.190 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.821/60.0
2026-01-22T01:59:07.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T01:59:08.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:08.128 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99499999999998
2026-01-22T01:59:08.128 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:08.128 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T01:59:08.220 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.792/60.0
2026-01-22T01:59:10.251 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:11.132 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:11.133 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.98700000000002. Last known sky angle: 179.999
2026-01-22T01:59:11.133 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:11.133 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.98700000000002
2026-01-22T01:59:12.281 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:14.136 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:14.156 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.98700000000002
2026-01-22T01:59:14.156 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:14.156 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:59:14.312 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:16.342 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:17.123 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T01:59:17.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:17.160 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 180.00000000000003
2026-01-22T01:59:17.160 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:17.160 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T01:59:18.373 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:20.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:20.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99900000000002
2026-01-22T01:59:20.181 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:20.181 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T01:59:20.403 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:22.434 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:23.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:23.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.01299999999998. Last known sky angle: 180.00000000000003
2026-01-22T01:59:23.185 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:23.185 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.01299999999998
2026-01-22T01:59:24.464 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:26.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:26.209 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99499999999998. Last known sky angle: 180.01299999999998
2026-01-22T01:59:26.209 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:26.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99499999999998
2026-01-22T01:59:26.495 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:27.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T01:59:28.525 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:29.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:29.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.988. Last known sky angle: 179.99499999999998
2026-01-22T01:59:29.229 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:29.229 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.988
2026-01-22T01:59:30.556 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:32.232 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:32.251 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00100000000003. Last known sky angle: 179.988
2026-01-22T01:59:32.251 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T01:59:32.251 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00100000000003
2026-01-22T01:59:32.588 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 2/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T01:59:33.399 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T01:59:33.399 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:59:33.422 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:59:35.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T01:59:35.254 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 5
2026-01-22T01:59:35.254 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 3 of 5: 3
2026-01-22T01:59:35.254 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T01:59:35.254 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T01:59:35.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T01:59:35.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T01:59:35.254 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T01:59:35.255 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T01:59:35.255 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T01:59:35.255 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T01:59:35.264 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T01:59:35.266 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T01:59:35.266 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 3
2026-01-22T01:59:35.266 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:3
2026-01-22T01:59:35.266 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 3
2026-01-22T01:59:35.317 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 1
2026-01-22T01:59:36.338 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 2
2026-01-22T01:59:37.139 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T01:59:37.140 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T01:59:28.779919
2026-01-22T01:59:37.140 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T01:59:28.779919
2026-01-22T01:59:37.140 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T01:59:37.140 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T01:59:37.140 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T01:59:37.140 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-22T23:59:37&start_after=2026-01-20T23:59:37&end_after=2026-01-21T23:59:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T01:59:37.247 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:59:37.248 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:59:37.249 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:59:37.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:59:37.251 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:59:37.253 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:59:37.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:59:37.255 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T01:59:37.256 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 752.742296
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-21 23:59:37.257735    Obs time: 2026-01-22 00:12:10
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:12:32.742265
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  752
2026-01-22T01:59:37.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T01:59:37.358 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 3
2026-01-22T01:59:38.379 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 3 : try 4
2026-01-22T01:59:39.424 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 3 successfully
2026-01-22T01:59:40.425 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:59:40.477 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T01:59:41.478 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T01:59:41.480 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.2
2026-01-22T01:59:41.480 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:58:45
2026-01-22T01:59:41.480 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:58:45
2026-01-22T01:59:41.480 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.3, 2602
2026-01-22T01:59:41.480 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09087559055118108
2026-01-22T01:59:41.483 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 3
2026-01-22T01:59:41.483 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T01:59:41.483 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T01:59:41.484 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T01:59:41.530 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 3 successfully
2026-01-22T01:59:42.531 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T01:59:42.531 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T01:59:42.531 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T01:59:43.566 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T01:59:45.583 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T01:59:45.583 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T01:59:45.583 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T01:59:45.584 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T01:59:45.584 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T01:59:45.586 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T01:59:45.586 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T01:59:45.587 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T01:59:45.748 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T01:59:45.748 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T01:59:45.750 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769039985.750581
2026-01-22T01:59:46.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T01:59:46.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T01:59:46.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T01:59:46.585 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:46.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 72.65099999999998. Last known sky angle: 81.619
2026-01-22T01:59:46.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle DID change
2026-01-22T01:59:46.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle changed during an exposure sequence
2026-01-22T01:59:46.603 [INFO] [derotation_worker] [script_runner.py] [log()] Script name = ATLAS26ayq_17234688_13498_13544.json 
2026-01-22T01:59:46.603 [INFO] [derotation_worker] [script_runner.py] [log()] Script running = True
2026-01-22T01:59:46.604 [INFO] [derotation_worker] [script_runner.py] [log()] Doing script iteration 1 of 1
2026-01-22T01:59:46.604 [INFO] [derotation_worker] [script_runner.py] [log()] Doing script unit 3 of 5
2026-01-22T01:59:46.604 [INFO] [derotation_worker] [script_runner.py] [log()] Script aborted= False
2026-01-22T01:59:46.604 [INFO] [derotation_worker] [script_runner.py] [log()] Script has not failed
2026-01-22T01:59:46.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation occurred during exposure 1 of 1
2026-01-22T01:59:46.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Exposure length = 60.000000 seconds  Exposure time remaining 59.103000 seconds
2026-01-22T01:59:46.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Guiding set: True
2026-01-22T01:59:46.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Instrument mode = IMAGING
2026-01-22T01:59:46.650 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Turning guiding off because we've had a derotation
2026-01-22T01:59:46.650 [INFO] [derotation_worker] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:59:46.650 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:59:46.650 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:59:49.653 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:59:49.653 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:59:51.181 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.61/60.0
2026-01-22T01:59:51.655 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:59:51.655 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Returned from guiding off because we've had a derotation
2026-01-22T01:59:51.656 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 72.65099999999998
2026-01-22T01:59:53.206 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.57/60.0
2026-01-22T01:59:54.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T01:59:54.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 1.4300000000000068. Last known sky angle: 72.65099999999998
2026-01-22T01:59:54.658 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle DID change
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle changed during an exposure sequence
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [log()] Script name = ATLAS26ayq_17234688_13498_13544.json 
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [log()] Script running = True
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [log()] Doing script iteration 1 of 1
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [log()] Doing script unit 3 of 5
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [log()] Script aborted= False
2026-01-22T01:59:54.658 [INFO] [derotation_worker] [script_runner.py] [log()] Script has not failed
2026-01-22T01:59:54.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation occurred during exposure 1 of 1
2026-01-22T01:59:54.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Exposure length = 60.000000 seconds  Exposure time remaining 51.080000 seconds
2026-01-22T01:59:54.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Guiding set: False
2026-01-22T01:59:54.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Instrument mode = IMAGING
2026-01-22T01:59:54.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Turning guiding off because we've had a derotation
2026-01-22T01:59:54.673 [INFO] [derotation_worker] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T01:59:54.673 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T01:59:54.673 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T01:59:55.237 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.544/60.0
2026-01-22T01:59:56.271 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T01:59:57.278 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.515/60.0
2026-01-22T01:59:57.676 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T01:59:57.676 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T01:59:59.293 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.474/60.0
2026-01-22T01:59:59.677 [DEBUG] [derotation_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T01:59:59.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Returned from guiding off because we've had a derotation
2026-01-22T01:59:59.677 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 1.4300000000000068
2026-01-22T02:00:01.347 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.457/60.0
2026-01-22T02:00:02.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:02.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.001999999999981128. Last known sky angle: 1.4300000000000068
2026-01-22T02:00:02.681 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:02.681 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.001999999999981128
2026-01-22T02:00:03.395 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.404/60.0
2026-01-22T02:00:05.449 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.355/60.0
2026-01-22T02:00:05.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:05.702 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0049999999999954525. Last known sky angle: -0.001999999999981128
2026-01-22T02:00:05.702 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:05.702 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0049999999999954525
2026-01-22T02:00:06.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:00:07.513 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.301/60.0
2026-01-22T02:00:08.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:08.722 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.012000000000000455. Last known sky angle: 0.0049999999999954525
2026-01-22T02:00:08.722 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:08.722 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.012000000000000455
2026-01-22T02:00:09.573 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.238/60.0
2026-01-22T02:00:11.616 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.179/60.0
2026-01-22T02:00:11.725 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:11.726 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.007000000000005002. Last known sky angle: 0.012000000000000455
2026-01-22T02:00:11.726 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:11.726 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.007000000000005002
2026-01-22T02:00:13.683 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.135/60.0
2026-01-22T02:00:14.729 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:14.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.025000000000005684. Last known sky angle: -0.007000000000005002
2026-01-22T02:00:14.749 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:14.749 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.025000000000005684
2026-01-22T02:00:15.728 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.068/60.0
2026-01-22T02:00:16.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:00:17.752 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:17.753 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.006000000000000227. Last known sky angle: 0.025000000000005684
2026-01-22T02:00:17.753 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:17.753 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.006000000000000227
2026-01-22T02:00:17.779 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.023/60.0
2026-01-22T02:00:19.835 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.972/60.0
2026-01-22T02:00:20.757 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:20.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.006000000000000227. Last known sky angle: -0.006000000000000227
2026-01-22T02:00:20.775 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:20.776 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.006000000000000227
2026-01-22T02:00:21.881 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.916/60.0
2026-01-22T02:00:23.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:23.779 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.00899999999998613. Last known sky angle: 0.006000000000000227
2026-01-22T02:00:23.779 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:23.780 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.00899999999998613
2026-01-22T02:00:23.954 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.869/60.0
2026-01-22T02:00:25.991 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.796/60.0
2026-01-22T02:00:26.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:00:26.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:26.806 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: 0.00899999999998613
2026-01-22T02:00:26.806 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:26.806 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-22T02:00:28.054 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.76/60.0
2026-01-22T02:00:29.809 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:29.810 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0049999999999954525. Last known sky angle: -0.0020000000000095497
2026-01-22T02:00:29.810 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:29.810 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0049999999999954525
2026-01-22T02:00:30.117 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.696/60.0
2026-01-22T02:00:32.192 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.633/60.0
2026-01-22T02:00:32.813 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:32.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.03099999999997749. Last known sky angle: 0.0049999999999954525
2026-01-22T02:00:32.828 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:32.828 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.03099999999997749
2026-01-22T02:00:34.228 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.56/60.0
2026-01-22T02:00:35.831 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:35.832 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.028999999999996362. Last known sky angle: -0.03099999999997749
2026-01-22T02:00:35.832 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:35.832 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.028999999999996362
2026-01-22T02:00:36.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.523/60.0
2026-01-22T02:00:36.307 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:00:36.326 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:00:28.980089
2026-01-22T02:00:36.326 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:00:28.980089
2026-01-22T02:00:36.326 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:00:36.326 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:00:36.326 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:00:36.326 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:00:36&start_after=2026-01-21T00:00:36&end_after=2026-01-22T00:00:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:00:36.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:00:36.435 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:00:36.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:00:36.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:00:36.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:00:36.440 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:00:36.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:00:36.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:00:36.444 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:00:36.444 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 693.554751
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:00:36.445281    Obs time: 2026-01-22 00:12:10
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:33.554719
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  693
2026-01-22T02:00:36.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:00:38.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.485/60.0
2026-01-22T02:00:38.833 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:38.834 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.002999999999985903. Last known sky angle: -0.028999999999996362
2026-01-22T02:00:38.834 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:38.834 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.002999999999985903
2026-01-22T02:00:40.377 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.434/60.0
2026-01-22T02:00:41.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:41.838 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.002999999999985903
2026-01-22T02:00:41.838 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:41.838 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T02:00:42.430 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.375/60.0
2026-01-22T02:00:44.457 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.32/60.0
2026-01-22T02:00:44.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:44.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.01099999999999568. Last known sky angle: 0.0010000000000047748
2026-01-22T02:00:44.858 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:44.858 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.01099999999999568
2026-01-22T02:00:45.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:00:46.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:47.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:47.861 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.020999999999986585. Last known sky angle: -0.01099999999999568
2026-01-22T02:00:47.861 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:47.862 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.020999999999986585
2026-01-22T02:00:48.543 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:50.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:50.865 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:50.882 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.006000000000000227. Last known sky angle: -0.020999999999986585
2026-01-22T02:00:50.882 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:50.882 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.006000000000000227
2026-01-22T02:00:52.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:53.885 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:53.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.006000000000000227
2026-01-22T02:00:53.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:53.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T02:00:54.684 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:55.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:00:56.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:56.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:56.911 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.004000000000019099. Last known sky angle: -0.0010000000000047748
2026-01-22T02:00:56.911 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:56.911 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.004000000000019099
2026-01-22T02:00:58.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:00:59.914 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:00:59.915 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.007999999999981355. Last known sky angle: 0.004000000000019099
2026-01-22T02:00:59.916 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:00:59.916 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.007999999999981355
2026-01-22T02:01:00.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:01:02.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:01:02.919 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:02.935 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.018000000000000682. Last known sky angle: 0.007999999999981355
2026-01-22T02:01:02.935 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:02.935 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.018000000000000682
2026-01-22T02:01:04.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:01:05.473 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:01:05.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:05.938 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.006000000000000227. Last known sky angle: -0.018000000000000682
2026-01-22T02:01:05.938 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:05.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.006000000000000227
2026-01-22T02:01:06.973 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 3/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:01:08.180 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:01:08.180 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:01:08.182 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:01:08.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:01:08.975 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 3 of 5
2026-01-22T02:01:08.975 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 4 of 5: 4
2026-01-22T02:01:08.975 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:01:08.975 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:01:08.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:01:08.975 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:01:08.975 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:01:08.975 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:01:08.975 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:01:08.975 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:01:08.985 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:01:08.986 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:01:08.986 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 4
2026-01-22T02:01:08.986 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:4
2026-01-22T02:01:08.986 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 4
2026-01-22T02:01:09.040 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 1
2026-01-22T02:01:10.060 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 2
2026-01-22T02:01:11.081 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 3
2026-01-22T02:01:12.101 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 4
2026-01-22T02:01:13.122 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 4 : try 5
2026-01-22T02:01:14.143 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 4 successfully
2026-01-22T02:01:15.144 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T02:01:15.185 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T02:01:15.483 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:01:16.186 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:01:16.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.2
2026-01-22T02:01:16.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 01:58:45
2026-01-22T02:01:16.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T01:58:45
2026-01-22T02:01:16.187 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -16.3, 2680
2026-01-22T02:01:16.187 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09319055118110234
2026-01-22T02:01:16.190 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 4
2026-01-22T02:01:16.190 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 0
2026-01-22T02:01:16.190 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:0
2026-01-22T02:01:16.190 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 0
2026-01-22T02:01:16.237 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 4 successfully
2026-01-22T02:01:17.238 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 0
2026-01-22T02:01:17.238 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:01:17.238 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:01:18.296 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:01:20.318 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='09:27:23.28', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='-32:00:30.96', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='ATLAS26ayq', comment='The object name')]
2026-01-22T02:01:20.318 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:01:20.318 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:01:20.318 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:01:20.318 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:01:20.320 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:01:20.320 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:01:20.322 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:01:20.423 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:01:20.423 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:01:20.425 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040080.4254067
2026-01-22T02:01:20.819 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T02:01:20.819 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T02:01:21.319 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:21.338 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0519999999999925. Last known sky angle: -0.004000000000019099
2026-01-22T02:01:21.338 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:21.338 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0519999999999925
2026-01-22T02:01:24.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:24.342 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.016999999999995907. Last known sky angle: -0.0519999999999925
2026-01-22T02:01:24.342 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:24.342 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.016999999999995907
2026-01-22T02:01:25.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:01:25.853 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.59/60.0
2026-01-22T02:01:27.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:27.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0049999999999954525. Last known sky angle: 0.016999999999995907
2026-01-22T02:01:27.362 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:27.362 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0049999999999954525
2026-01-22T02:01:27.898 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.572/60.0
2026-01-22T02:01:29.915 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.527/60.0
2026-01-22T02:01:30.365 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:30.367 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.025000000000005684. Last known sky angle: -0.0049999999999954525
2026-01-22T02:01:30.367 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:30.367 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.025000000000005684
2026-01-22T02:01:31.970 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.51/60.0
2026-01-22T02:01:33.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:33.390 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.003999999999990678. Last known sky angle: -0.025000000000005684
2026-01-22T02:01:33.390 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:33.390 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.003999999999990678
2026-01-22T02:01:33.993 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.455/60.0
2026-01-22T02:01:35.498 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:01:35.499 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:01:29.180252
2026-01-22T02:01:35.499 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:01:29.180252
2026-01-22T02:01:35.499 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:01:35.499 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:01:35.499 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:01:35.499 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:01:35&start_after=2026-01-21T00:01:35&end_after=2026-01-22T00:01:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:01:35.608 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:01:35.609 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:01:35.610 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:01:35.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:01:35.612 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:01:35.614 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:01:35.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:01:35.616 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:01:35.618 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:01:35.618 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 634.380832
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:01:35.619204    Obs time: 2026-01-22 00:12:10
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:34.380796
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  634
2026-01-22T02:01:35.619 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:01:36.048 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.432/60.0
2026-01-22T02:01:36.393 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:36.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.006000000000000227. Last known sky angle: 0.003999999999990678
2026-01-22T02:01:36.409 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:36.410 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.006000000000000227
2026-01-22T02:01:38.071 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.378/60.0
2026-01-22T02:01:39.410 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:39.426 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.011999999999972033. Last known sky angle: 0.006000000000000227
2026-01-22T02:01:39.427 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:39.427 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.011999999999972033
2026-01-22T02:01:40.093 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.354/60.0
2026-01-22T02:01:42.143 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.331/60.0
2026-01-22T02:01:42.430 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:42.431 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.011999999999972033
2026-01-22T02:01:42.431 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:42.431 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T02:01:44.155 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.282/60.0
2026-01-22T02:01:44.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:01:45.434 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:45.451 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.01099999999999568. Last known sky angle: -0.0010000000000047748
2026-01-22T02:01:45.451 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:45.451 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.01099999999999568
2026-01-22T02:01:46.178 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.27/60.0
2026-01-22T02:01:48.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.249/60.0
2026-01-22T02:01:48.453 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:48.454 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.006000000000000227. Last known sky angle: 0.01099999999999568
2026-01-22T02:01:48.454 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:48.454 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.006000000000000227
2026-01-22T02:01:50.224 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 30.226/60.0
2026-01-22T02:01:51.457 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:51.474 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0049999999999954525. Last known sky angle: -0.006000000000000227
2026-01-22T02:01:51.474 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:51.474 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0049999999999954525
2026-01-22T02:01:52.247 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 28.202/60.0
2026-01-22T02:01:54.270 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 26.178/60.0
2026-01-22T02:01:54.477 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:54.478 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.008000000000009777. Last known sky angle: 0.0049999999999954525
2026-01-22T02:01:54.478 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:54.478 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.008000000000009777
2026-01-22T02:01:54.635 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:01:56.292 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 24.155/60.0
2026-01-22T02:01:57.481 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:01:57.504 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.02400000000000091. Last known sky angle: -0.008000000000009777
2026-01-22T02:01:57.504 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:01:57.504 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.02400000000000091
2026-01-22T02:01:58.315 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 22.133/60.0
2026-01-22T02:02:00.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 20.11/60.0
2026-01-22T02:02:00.505 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:00.506 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.002999999999985903. Last known sky angle: -0.02400000000000091
2026-01-22T02:02:00.506 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:00.506 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.002999999999985903
2026-01-22T02:02:02.409 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 18.06/60.0
2026-01-22T02:02:03.509 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:03.531 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0020000000000095497. Last known sky angle: -0.002999999999985903
2026-01-22T02:02:03.531 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:03.531 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0020000000000095497
2026-01-22T02:02:04.432 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 16.015/60.0
2026-01-22T02:02:04.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:02:06.455 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.993/60.0
2026-01-22T02:02:06.533 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:06.534 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.012000000000000455. Last known sky angle: -0.0020000000000095497
2026-01-22T02:02:06.534 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:06.534 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.012000000000000455
2026-01-22T02:02:08.478 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.97/60.0
2026-01-22T02:02:09.537 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:09.558 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.003999999999990678. Last known sky angle: 0.012000000000000455
2026-01-22T02:02:09.558 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:09.558 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.003999999999990678
2026-01-22T02:02:10.501 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.948/60.0
2026-01-22T02:02:12.508 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.925/60.0
2026-01-22T02:02:12.561 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:12.562 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: 0.003999999999990678
2026-01-22T02:02:12.562 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:12.562 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T02:02:14.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.918/60.0
2026-01-22T02:02:14.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:02:15.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:15.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.02199999999999136. Last known sky angle: 0.0009999999999763531
2026-01-22T02:02:15.584 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:15.584 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.02199999999999136
2026-01-22T02:02:16.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.894/60.0
2026-01-22T02:02:18.577 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.871/60.0
2026-01-22T02:02:18.587 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:18.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0030000000000143245. Last known sky angle: -0.02199999999999136
2026-01-22T02:02:18.610 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:18.610 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0030000000000143245
2026-01-22T02:02:20.600 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:21.613 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:21.632 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0010000000000047748. Last known sky angle: 0.0030000000000143245
2026-01-22T02:02:21.632 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:21.632 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0010000000000047748
2026-01-22T02:02:22.623 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:24.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:24.633 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0030000000000143245. Last known sky angle: 0.0010000000000047748
2026-01-22T02:02:24.633 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:24.634 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0030000000000143245
2026-01-22T02:02:24.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:24.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:02:26.668 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:27.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:27.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.014000000000010004. Last known sky angle: 0.0030000000000143245
2026-01-22T02:02:27.657 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:27.657 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.014000000000010004
2026-01-22T02:02:28.691 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:30.660 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:30.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: -0.014000000000010004
2026-01-22T02:02:30.661 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:30.661 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T02:02:30.714 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:32.737 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:33.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:33.679 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: -0.0010000000000047748
2026-01-22T02:02:33.679 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:33.679 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T02:02:34.671 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:02:34.673 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:02:29.380707
2026-01-22T02:02:34.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:02:29.380707
2026-01-22T02:02:34.673 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:02:34.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:02:34.673 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:02:34.673 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:02:34&start_after=2026-01-21T00:02:34&end_after=2026-01-22T00:02:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:02:34.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:34.786 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:02:34.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:02:34.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:02:34.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:02:34.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:02:34.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:02:34.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:02:34.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:02:34.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:02:34.796 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:02:34.796 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:02:34.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:02:34.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:02:34.796 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 575.203175
2026-01-22T02:02:34.813 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:02:36.682 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:36.705 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0. Last known sky angle: 0.0
2026-01-22T02:02:36.705 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:36.705 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0
2026-01-22T02:02:36.783 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:36.814 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:02:36.815 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:02:36.815 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:02:36.815250    Obs time: 2026-01-22 00:12:10
2026-01-22T02:02:36.815 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:33.184750
2026-01-22T02:02:36.815 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  573
2026-01-22T02:02:36.815 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:02:38.806 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:39.708 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:39.724 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.002999999999985903. Last known sky angle: 0.0
2026-01-22T02:02:39.724 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:39.724 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.002999999999985903
2026-01-22T02:02:40.830 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:42.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:42.728 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.004000000000019099. Last known sky angle: 0.002999999999985903
2026-01-22T02:02:42.728 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:42.728 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.004000000000019099
2026-01-22T02:02:42.808 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:02:42.808 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:02:42.810 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:02:42.859 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 4/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/60.0
2026-01-22T02:02:43.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:02:45.731 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:02:45.731 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 4 of 5
2026-01-22T02:02:45.731 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 5 of 5: 5
2026-01-22T02:02:45.731 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:02:45.731 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:02:45.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:02:45.731 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:02:45.731 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:02:45.732 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:02:45.732 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:02:45.732 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:02:45.743 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:02:45.743 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:02:45.743 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T02:02:45.743 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:02:45.743 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:02:45.911 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 1
2026-01-22T02:02:46.931 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 2
2026-01-22T02:02:47.951 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 3
2026-01-22T02:02:48.971 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 4
2026-01-22T02:02:49.992 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 5
2026-01-22T02:02:51.012 [INFO] [script_worker] [client.py] [set_filter()] Waiting for filter in slide 0 to move to position 0 : try 6
2026-01-22T02:02:52.055 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:02:53.056 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T02:02:53.056 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T02:02:53.056 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:02:53.056 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:02:53.070 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:02:53.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:02:54.071 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:02:54.123 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:02:55.124 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:02:55.125 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.53
2026-01-22T02:02:55.125 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:01:58
2026-01-22T02:02:55.125 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:01:58
2026-01-22T02:02:55.125 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:02:55.126 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09264716535433068
2026-01-22T02:02:55.129 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T02:02:55.129 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T02:02:55.129 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T02:02:56.158 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:02:58.161 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T02:02:58.161 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:02:58.161 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:02:58.162 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:02:58.162 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:02:58.164 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:02:58.164 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:02:58.166 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:02:58.266 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:02:58.266 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:02:58.268 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040178.2680717
2026-01-22T02:02:58.662 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T02:02:58.662 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T02:02:59.163 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:02:59.182 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 0.0009999999999763531. Last known sky angle: -0.008000000000009777
2026-01-22T02:02:59.182 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:02:59.182 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 0.0009999999999763531
2026-01-22T02:03:02.185 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:03:02.186 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: -0.0010000000000047748. Last known sky angle: 0.0009999999999763531
2026-01-22T02:03:02.186 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:03:02.186 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as -0.0010000000000047748
2026-01-22T02:03:03.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: ATLAS26ayq_17234688_13498_13544.json , Iteration 1/1, Unit 5/5 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T02:03:03.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:03:04.532 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:03:04.532 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:03:04.534 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:03:05.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:03:05.758 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 5 of 5
2026-01-22T02:03:05.758 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:03:05.758 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:03:06.486 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:03:06.486 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script ATLAS26ayq_17234688_13498_13544.json was run successfully
2026-01-22T02:03:06.486 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T02:03:06.486 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T02:03:06.486 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T02:03:06.486 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T02:03:06.486 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T02:03:06.486 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:03:06.486 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:03:06.987 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:03:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T02:03:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:03:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:03:06.987 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:03:06.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:03:06.987 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:03:06.987 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:03:06.987 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T02:03:06.989 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:33.3444   Targ dec = -32:04:15.7836
2026-01-22T02:03:06.989 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:03:06.989 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:03:06.989 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:03:06.995 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:03:06.995 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:03:06.995 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:03:06.995 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:03:08.041 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:03:10.042 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:03:10.042 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:03:10.042 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:03:10.490 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:03:10.490 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T02:03:10.490 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17513441 COMPLETED 13544 reason
2026-01-22T02:03:10.490 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17513441 COMPLETED 13544 reason
2026-01-22T02:03:10.490 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:03:10.490 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:03:10.490 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:03:10.490 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:03:10.490 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:03:10.490 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:03:13.493 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:03:13.493 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:03:13.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:03:15.495 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:03:15.495 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:03:15.495 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T02:03:15.495 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T02:03:15.495 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T02:03:15.498 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T02:03:15.498 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-21T23:45:00Z
2026-01-22T02:03:15.498 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T02:03:15.498 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T02:03:15.498 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T02:03:15.498 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T02:03:15.498 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T02:03:15.498 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:03:15.498 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:03:15.999 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:03:15.999 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T02:03:15.999 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:03:15.999 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:03:15.999 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:03:15.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:03:15.999 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:03:15.999 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:03:15.999 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T02:03:16.019 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 09:28:33.53808   Targ dec = -32:04:16.0032
2026-01-22T02:03:16.019 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:03:16.019 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:03:16.020 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:03:16.026 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:03:16.027 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:03:16.027 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:03:16.027 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:03:17.065 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:03:19.067 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:03:19.067 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:03:19.067 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:03:19.502 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:03:19.502 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T02:03:19.502 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T02:03:19.503 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T02:03:19.503 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T02:03:19.503 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17513441
2026-01-22T02:03:19.503 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T02:03:19.503 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T02:03:19.503 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-21T23:44:51', 'end': '2026-01-22T00:03:19', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '1108.0', 'events': {}}} with config status ID 17513441
2026-01-22T02:03:19.632 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T02:03:19.632 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-21T23:23:37Z', 'guide_off', 'config_id 13544', 'config_status_id 17513441', 'update_OCS 17513441 ATTEMPTED', 'run_script setup_ATLAS26ayq_17234688_13498_13544.json', 'run_script ATLAS26ayq_17234688_13498_13544.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17513441 COMPLETED 13544 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-21T23:45:00Z', 'run_script arc_flat_lamp_off.json'] at time 02:03:19
2026-01-22T02:03:23.857 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:03:33.868 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:03:33.886 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:03:29.579282
2026-01-22T02:03:33.886 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:03:29.579282
2026-01-22T02:03:33.886 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:03:33.886 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:03:33.886 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:03:33.886 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:03:33&start_after=2026-01-21T00:03:33&end_after=2026-01-22T00:03:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:03:33.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:03:33.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:03:33.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:03:33.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:03:33.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:03:34.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:03:34.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:03:34.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:03:34.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:03:34.005 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:03:34.005 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:03:34.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:03:34.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:03:34.005 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 515.994111
2026-01-22T02:03:34.006 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:03:36.008 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:03:36.025 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:03:36.025 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:03:36.025646    Obs time: 2026-01-22 00:12:10
2026-01-22T02:03:36.025 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:08:33.974354
2026-01-22T02:03:36.025 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  513
2026-01-22T02:03:36.025 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:03:43.031 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:03:53.041 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:04:03.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:04:13.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:04:23.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:04:33.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:04:33.084 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:04:29.779126
2026-01-22T02:04:33.084 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:04:29.779126
2026-01-22T02:04:33.084 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:04:33.084 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:04:33.084 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:04:33.084 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:04:33&start_after=2026-01-21T00:04:33&end_after=2026-01-22T00:04:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:04:33.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:04:33.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:04:33.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:04:33.195 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:04:33.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:04:33.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:04:33.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:04:33.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:04:33.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:04:33.202 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:04:33.202 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:04:33.202 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:04:33.202 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:04:33.202 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 456.79765
2026-01-22T02:04:33.203 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:04:35.205 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:04:35.206 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:04:35.206 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:04:35.206223    Obs time: 2026-01-22 00:12:10
2026-01-22T02:04:35.206 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:07:34.793777
2026-01-22T02:04:35.206 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  454
2026-01-22T02:04:35.206 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:04:42.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:04:52.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:05:02.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:05:12.251 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:05:22.265 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:05:32.280 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:05:32.304 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:05:29.978417
2026-01-22T02:05:32.304 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:05:29.978417
2026-01-22T02:05:32.304 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:05:32.304 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:05:32.305 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:05:32.305 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:05:32&start_after=2026-01-21T00:05:32&end_after=2026-01-22T00:05:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:05:32.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:05:32.431 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:05:32.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:05:32.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:05:32.443 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:05:32.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:05:32.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:05:32.457 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:05:32.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:05:32.462 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:05:32.462 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:05:32.462 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:05:32.462 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:05:32.462 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 397.537047
2026-01-22T02:05:32.464 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:05:34.465 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:05:34.487 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:05:34.487 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:05:34.487761    Obs time: 2026-01-22 00:12:10
2026-01-22T02:05:34.487 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:35.512239
2026-01-22T02:05:34.488 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  395
2026-01-22T02:05:34.488 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:05:41.497 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:05:51.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:06:01.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:06:11.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:06:21.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:06:31.555 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:06:31.556 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:06:30.176729
2026-01-22T02:06:31.556 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:06:30.176729
2026-01-22T02:06:31.556 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:06:31.556 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:06:31.557 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:06:31.557 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:06:31&start_after=2026-01-21T00:06:31&end_after=2026-01-22T00:06:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:06:31.664 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:06:31.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:06:31.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:06:31.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:06:31.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:06:31.669 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:06:31.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:06:31.671 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:06:31.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:06:31.673 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:06:31.673 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:06:31.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:06:31.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:06:31.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 338.326234
2026-01-22T02:06:31.674 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:06:33.676 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:06:33.677 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:06:33.677 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:06:33.677702    Obs time: 2026-01-22 00:12:10
2026-01-22T02:06:33.677 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:36.322298
2026-01-22T02:06:33.677 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  336
2026-01-22T02:06:33.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:06:40.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:06:50.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:07:00.705 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:07:10.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:07:20.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:07:30.736 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:07:30.752 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:07:30.376143
2026-01-22T02:07:30.752 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:07:30.376143
2026-01-22T02:07:30.752 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:07:30.752 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:07:30.752 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:07:30.753 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:07:30&start_after=2026-01-21T00:07:30&end_after=2026-01-22T00:07:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:07:30.876 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:07:30.877 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:07:30.877 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:07:30.878 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:07:30.879 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:07:30.881 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:07:30.882 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:07:30.883 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:07:30.884 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:07:30.885 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:07:30.885 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:07:30.885 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:07:30.885 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:07:30.885 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 279.114137
2026-01-22T02:07:30.886 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:07:32.888 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:07:32.908 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:07:32.908 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:07:32.908543    Obs time: 2026-01-22 00:12:10
2026-01-22T02:07:32.908 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:37.091457
2026-01-22T02:07:32.908 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  277
2026-01-22T02:07:32.908 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:07:39.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:07:49.927 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:07:59.937 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:08:09.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:08:19.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:08:29.967 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:08:29.968 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:07:30.376143
2026-01-22T02:08:29.968 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:07:30.376143
2026-01-22T02:08:29.968 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:08:29.968 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:08:29.968 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:08:29.968 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:08:29&start_after=2026-01-21T00:08:29&end_after=2026-01-22T00:08:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:08:30.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:08:30.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:08:30.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:08:30.100 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:08:30.101 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:08:30.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:08:30.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:08:30.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:08:30.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:08:30.112 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:08:30.112 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:08:30.112 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:08:30.112 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:08:30.112 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 219.887423
2026-01-22T02:08:30.113 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:08:32.115 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:08:32.116 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:08:32.124 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:08:32.124541    Obs time: 2026-01-22 00:12:10
2026-01-22T02:08:32.124 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:37.875459
2026-01-22T02:08:32.124 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  217
2026-01-22T02:08:32.124 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:08:39.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:08:49.142 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:08:59.152 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:09:09.162 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:09:19.172 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:09:29.182 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:09:29.183 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:08:30.575679
2026-01-22T02:09:29.183 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:08:30.575679
2026-01-22T02:09:29.183 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:09:29.183 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:09:29.183 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:09:29.183 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:09:29&start_after=2026-01-21T00:09:29&end_after=2026-01-22T00:09:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:09:29.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:09:29.290 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:09:29.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:09:29.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:09:29.293 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:09:29.294 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:09:29.296 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:09:29.296 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:09:29.298 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:09:29.298 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:09:29.298 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:09:29.299 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:09:29.299 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:09:29.299 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 160.700933
2026-01-22T02:09:29.299 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:09:31.301 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:09:31.319 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:09:31.320 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:09:31.319994    Obs time: 2026-01-22 00:12:10
2026-01-22T02:09:31.320 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:38.680006
2026-01-22T02:09:31.320 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  158
2026-01-22T02:09:31.320 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:09:38.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:09:48.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:09:58.347 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:10:08.357 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:10:18.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:10:28.378 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:10:28.379 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:09:30.778329
2026-01-22T02:10:28.379 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:09:30.778329
2026-01-22T02:10:28.379 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:10:28.379 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:10:28.379 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:10:28.379 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:10:28&start_after=2026-01-21T00:10:28&end_after=2026-01-22T00:10:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:10:28.493 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:10:28.494 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:10:28.494 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:10:28.495 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:10:28.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:10:28.498 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:10:28.499 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:10:28.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:10:28.501 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:10:28.502 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:10:28.502 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:10:28.502 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:10:28.502 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:10:28.502 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 101.497272
2026-01-22T02:10:28.503 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:10:30.505 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:10:30.506 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:10:30.506 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:10:30.506543    Obs time: 2026-01-22 00:12:10
2026-01-22T02:10:30.506 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:39.493457
2026-01-22T02:10:30.506 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  99
2026-01-22T02:10:30.506 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:10:37.513 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:10:47.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:10:57.534 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:11:07.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:11:17.555 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:11:27.566 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:11:27.582 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:10:30.978197
2026-01-22T02:11:27.583 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:10:30.978197
2026-01-22T02:11:27.583 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:11:27.583 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:11:27.583 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:11:27.583 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:11:27&start_after=2026-01-21T00:11:27&end_after=2026-01-22T00:11:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:11:27.700 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:11:27.700 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:11:27.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:11:27.702 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:11:27.703 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:11:27.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:11:27.706 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:11:27.707 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:11:27.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:11:27.709 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:11:27.709 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:11:27.709 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:11:27.709 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:11:27.709 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 42.290407
2026-01-22T02:11:27.710 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:11:29.712 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:11:29.727 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:11:29.728 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:11:29.728038    Obs time: 2026-01-22 00:12:10
2026-01-22T02:11:29.728 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:40.271962
2026-01-22T02:11:29.728 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  40
2026-01-22T02:11:29.728 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:11:36.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:11:46.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:11:56.756 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:12:06.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:12:16.776 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:12:26.787 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:12:26.788 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:11:31.183207
2026-01-22T02:12:26.788 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:11:31.183207
2026-01-22T02:12:26.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:12:26.788 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:12:26.788 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:12:26.788 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:12:26&start_after=2026-01-21T00:12:26&end_after=2026-01-22T00:12:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:12:26.944 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:12:26.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:12:26.946 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:12:26.946 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:12:26.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:12:26.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:12:26.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:12:26.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:12:26.953 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:12:26.953 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:12:26.954 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 9 configurations
2026-01-22T02:12:26.954 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:12:26.954 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:12:10Z
2026-01-22T02:12:26.954 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -16.954119
2026-01-22T02:12:26.954 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:12:28.957 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:12:28.957 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:12:28.957 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:12:28.957980    Obs time: 2026-01-22 00:12:10
2026-01-22T02:12:28.958 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:41.042020
2026-01-22T02:12:28.958 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86381
2026-01-22T02:12:28.958 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-22T00:12:10Z', 'guide_off', 'config_id 13540', 'config_status_id 17514190', 'update_OCS 17514190 ATTEMPTED', 'run_script setup_std_star_Feige56_17235437_13494_13540.json', 'run_script std_star_Feige56_17235437_13494_13540.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17514190 COMPLETED 13540 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-22T00:23:24Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T02:12:28.958 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T02:12:28.958 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T02:12:28.958 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T02:12:28.958 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T02:12:28.958 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T02:12:28.958 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:12:28.959 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:12:28.959 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:12:28.959 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:12:28.959 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:12:31.962 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:12:31.962 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:12:34.013 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:12:34.013 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:12:34.013 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-22T00:12:10Z
2026-01-22T02:12:34.013 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-22T00:12:10Z
2026-01-22T02:12:34.013 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:12:34.013 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:12:34.013 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:12:34.013 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:12:34.013 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:12:34.013 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:12:35.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:12:37.016 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:12:37.016 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13540
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13540
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17514190
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17514190
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17514190 ATTEMPTED
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17514190 ATTEMPTED
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 12.1131, 'targ_dec': 11.670135365016106, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '12:06:47.22', 'targ_dec': '11:40:12.49', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_Feige56_17235437_13494_13540.json'}
2026-01-22T02:12:39.019 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:12:39.019 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17514190
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T02:12:39.019 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17514190
2026-01-22T02:12:39.092 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T02:12:39.520 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:12:39.520 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_Feige56_17235437_13494_13540.json 1 times
2026-01-22T02:12:39.520 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:12:39.522 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T02:12:39.522 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T02:12:39.522 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T02:12:42.550 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:43.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:44.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:45.615 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:45.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:12:46.634 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:47.658 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:48.675 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:49.693 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:50.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:51.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:52.754 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:53.778 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:54.796 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:55.815 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:55.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:12:56.833 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:57.851 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:58.875 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:12:59.898 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:00.919 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:01.938 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:02.958 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:03.974 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:04.992 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:05.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:13:06.010 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:07.032 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:08.050 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:09.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:10.087 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:11.107 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:12.128 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:13.150 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:14.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:15.188 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:16.007 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:13:16.203 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:17.221 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:18.242 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:19.265 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Dome is moving
2026-01-22T02:13:20.285 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T02:13:20.285 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  12.1134195159803 is close enough to target ra = 12.1131
2026-01-22T02:13:20.286 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  11.6671652230532 is close enough to target dec = 11.670135365016106
2026-01-22T02:13:20.286 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T02:13:20.286 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:13:20.286 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:13:20.286 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:13:20.286 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:13:20.286 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T02:13:20.286 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T02:13:20.298 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:13:20.298 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:13:20.330 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:13:21.331 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:13:21.331 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:13:21.366 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:13:22.367 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:13:22.386 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:13:23.387 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:13:23.388 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.4
2026-01-22T02:13:23.388 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:12:40
2026-01-22T02:13:23.388 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:12:40
2026-01-22T02:13:23.388 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:13:23.389 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09272598425196847
2026-01-22T02:13:23.392 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T02:13:23.392 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T02:13:23.392 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T02:13:23.400 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:13:23.401 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:13:23.421 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:13:24.422 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:13:24.423 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:13:24.441 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:13:25.442 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:13:25.461 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:13:26.017 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:13:26.036 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:12:31.382390
2026-01-22T02:13:26.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:12:31.382390
2026-01-22T02:13:26.036 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:13:26.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:13:26.036 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:13:26.036 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:13:26&start_after=2026-01-21T00:13:26&end_after=2026-01-22T00:13:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:13:26.244 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:13:26.245 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:13:26.246 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:13:26.247 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:13:26.249 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:13:26.254 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:13:26.255 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:13:26.256 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:25:00Z
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 693.742219
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:13:26.257814    Obs time: 2026-01-22 00:25:00
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:11:33.742186
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  693
2026-01-22T02:13:26.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:13:26.462 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:13:26.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.4
2026-01-22T02:13:26.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:12:40
2026-01-22T02:13:26.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:12:40
2026-01-22T02:13:26.463 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:13:26.464 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09272598425196847
2026-01-22T02:13:31.495 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T02:13:31.495 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:13:31.495 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:13:31.495 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:13:31.495 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:13:31.495 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:13:31.497 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:13:31.497 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:13:31.499 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:13:31.609 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:13:31.610 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:13:31.611 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040811.6117332
2026-01-22T02:13:35.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:13:36.872 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:13:36.872 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:13:36.874 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:13:37.004 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T02:13:41.007 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T02:13:41.007 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T02:13:45.274 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:13:55.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:14:05.294 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:14:11.121 [ERROR] [script_worker] [instrument.py] [acquire_target()] WCS file not found after 3 seconds
2026-01-22T02:14:11.121 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T02:14:11.121 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T02:14:11.121 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 12:06:47.22 = 654108.3 arcseconds
2026-01-22T02:14:11.121 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 11:40:12.49 = 42012.49 arcseconds
2026-01-22T02:14:11.121 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T02:14:11.143 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T02:14:15.304 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:14:16.169 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T02:14:16.169 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:14:16.169 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:14:16.169 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:14:16.169 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:14:16.169 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:14:16.171 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:14:16.171 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:14:16.173 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:14:16.297 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:14:16.297 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:14:16.299 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040856.29946
2026-01-22T02:14:17.671 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T02:14:20.558 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:14:20.559 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:14:20.577 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:14:20.677 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T02:14:24.681 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T02:14:25.314 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:14:25.315 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:13:31.584778
2026-01-22T02:14:25.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:13:31.584778
2026-01-22T02:14:25.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:14:25.315 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:14:25.315 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:14:25.315 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:14:25&start_after=2026-01-21T00:14:25&end_after=2026-01-22T00:14:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:14:25.427 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:14:25.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:14:25.428 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:14:25.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:14:25.432 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:14:25.437 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:14:25.438 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:14:25.439 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:25:00Z
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 634.559254
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:14:25.440779    Obs time: 2026-01-22 00:25:00
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:10:34.559221
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  634
2026-01-22T02:14:25.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:14:34.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:14:44.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:14:54.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:14:54.795 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T02:14:54.795 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T02:14:54.795 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 12:06:47.22 = 654108.3 arcseconds
2026-01-22T02:14:54.795 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 11:40:12.49 = 42012.49 arcseconds
2026-01-22T02:14:54.795 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 240
2026-01-22T02:14:54.815 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T02:14:59.821 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T02:14:59.821 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:14:59.821 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:14:59.821 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:14:59.821 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:14:59.821 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:14:59.823 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:14:59.823 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:14:59.825 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:14:59.937 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:14:59.937 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:14:59.939 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040899.9397056
2026-01-22T02:15:01.323 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T02:15:04.198 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:15:04.198 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:15:04.219 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:15:04.329 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T02:15:04.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:15:08.890 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] no sources
2026-01-22T02:15:10.919 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:15:10.919 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:15:10.919 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:15:10.919 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:15:10.919 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:15:10.921 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:15:10.921 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:15:10.923 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:15:11.041 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:15:11.041 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:15:11.043 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040911.0430737
2026-01-22T02:15:12.421 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T02:15:14.496 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:15:15.302 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:15:15.303 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:15:15.304 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:15:15.427 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T02:15:19.114 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2298  11051  13.7 to host 127.0.0.1 on port 12360
2026-01-22T02:15:19.114 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:15:19.114 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:15:22.117 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  2298  11051  13.7
2026-01-22T02:15:22.117 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  2298  11051  13.7
2026-01-22T02:15:24.119 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:15:24.526 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:15:24.546 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:14:31.790972
2026-01-22T02:15:24.546 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:14:31.790972
2026-01-22T02:15:24.546 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:15:24.546 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:15:24.546 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:15:24.546 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:15:24&start_after=2026-01-21T00:15:24&end_after=2026-01-22T00:15:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:15:24.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:15:24.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:15:24.657 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:15:24.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:15:24.660 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:15:24.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:15:24.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:15:24.667 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:15:24.668 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:15:24.668 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:15:24.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:15:24.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:25:00Z
2026-01-22T02:15:24.668 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 575.33107
2026-01-22T02:15:24.669 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:15:26.671 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:15:26.690 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:15:26.690 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:15:26.690578    Obs time: 2026-01-22 00:25:00
2026-01-22T02:15:26.690 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:09:33.309422
2026-01-22T02:15:26.690 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  573
2026-01-22T02:15:26.690 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:15:33.697 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:15:43.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:15:53.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:16:03.159 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T02:16:03.159 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:16:03.159 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:16:03.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:16:06.162 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T02:16:06.162 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T02:16:08.164 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:16:08.164 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:16:08.164 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:16:08.164 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:16:08.164 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:16:08.164 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:16:08.164 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:16:08.164 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:16:09.188 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:16:11.189 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:16:11.189 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:16:11.189 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:16:11.320 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:16:11.320 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_Feige56_17235437_13494_13540.json was run successfully
2026-01-22T02:16:11.320 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:16:11.320 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:16:11.320 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:16:11.320 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_Feige56_17235437_13494_13540.json
2026-01-22T02:16:11.320 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'Feige56', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '12:06:47.22', 'targ_dec': '11:40:12.49', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 240, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_Feige56_17235437_13494_13540.json'}
2026-01-22T02:16:11.320 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:16:11.320 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:16:11.821 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:16:11.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_Feige56_17235437_13494_13540.json 1 times
2026-01-22T02:16:11.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-22T02:16:11.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:16:11.821 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:16:11.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:16:11.821 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:16:11.821 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:16:11.821 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:16:11.821 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:16:11.821 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:16:11.831 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:16:11.832 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:16:11.832 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T02:16:11.832 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:16:11.832 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:16:11.855 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:16:12.856 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T02:16:12.856 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T02:16:12.856 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:16:12.856 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:16:12.874 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:16:13.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:16:13.875 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:16:13.894 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:16:14.895 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:16:14.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.65
2026-01-22T02:16:14.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:15:21
2026-01-22T02:16:14.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:15:21
2026-01-22T02:16:14.897 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:16:14.897 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09257440944881887
2026-01-22T02:16:14.900 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T02:16:14.900 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:16:14.900 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:16:15.929 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:16:17.932 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='12:06:47.22', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='11:40:12.49', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='Feige56', comment='The object name')]
2026-01-22T02:16:17.932 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:16:17.932 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:16:17.932 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:16:17.932 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:16:17.934 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:16:17.934 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:16:17.936 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:16:18.032 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:16:18.033 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:16:18.034 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769040978.0347388
2026-01-22T02:16:18.433 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T02:16:18.433 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T02:16:18.934 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:18.954 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:16:18.954 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:18.954 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:16:21.957 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:21.975 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:16:21.975 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:21.975 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:16:23.531 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.545/180.0
2026-01-22T02:16:23.749 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:16:23.766 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:15:31.989478
2026-01-22T02:16:23.766 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:15:31.989478
2026-01-22T02:16:23.766 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:16:23.766 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:16:23.766 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:16:23.766 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:16:23&start_after=2026-01-21T00:16:23&end_after=2026-01-22T00:16:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:16:23.872 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:16:23.873 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:16:23.874 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:16:23.875 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:16:23.876 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:16:23.878 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:16:23.879 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:16:23.880 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:16:23.881 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:16:23.881 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:16:23.881 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:16:23.881 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:16:23.881 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 420.11839
2026-01-22T02:16:23.882 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:16:24.977 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:24.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:16:24.978 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:24.978 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:16:25.578 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.505/180.0
2026-01-22T02:16:25.884 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:16:25.907 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:16:25.907 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:16:25.907165    Obs time: 2026-01-22 00:23:24
2026-01-22T02:16:25.907 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:06:58.092835
2026-01-22T02:16:25.907 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  418
2026-01-22T02:16:25.907 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:16:27.624 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.459/180.0
2026-01-22T02:16:27.981 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:28.000 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:16:28.000 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:28.000 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:16:29.655 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.413/180.0
2026-01-22T02:16:31.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:31.002 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:16:31.002 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:31.002 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:16:31.685 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.381/180.0
2026-01-22T02:16:32.914 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:16:33.716 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.351/180.0
2026-01-22T02:16:34.005 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:34.026 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:16:34.026 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:34.026 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:16:35.762 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.321/180.0
2026-01-22T02:16:37.029 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:37.048 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-22T02:16:37.048 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:37.048 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T02:16:37.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.273/180.0
2026-01-22T02:16:39.839 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.228/180.0
2026-01-22T02:16:40.050 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:40.070 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.999
2026-01-22T02:16:40.070 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:40.070 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:16:41.870 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.197/180.0
2026-01-22T02:16:42.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:16:43.073 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:43.074 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:16:43.074 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:43.074 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:16:43.900 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.168/180.0
2026-01-22T02:16:45.925 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.137/180.0
2026-01-22T02:16:46.077 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:46.097 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:16:46.097 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:46.097 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:16:47.956 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.11/180.0
2026-01-22T02:16:49.098 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:49.099 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:16:49.099 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:49.099 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:16:50.002 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.08/180.0
2026-01-22T02:16:52.049 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.033/180.0
2026-01-22T02:16:52.101 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:52.121 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:16:52.121 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:52.121 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:16:52.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:16:54.080 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.987/180.0
2026-01-22T02:16:55.122 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:55.141 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:16:55.141 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:55.141 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:16:56.126 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.956/180.0
2026-01-22T02:16:58.144 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:16:58.157 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.91/180.0
2026-01-22T02:16:58.162 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:16:58.162 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:16:58.162 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:17:00.187 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.879/180.0
2026-01-22T02:17:01.165 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:01.166 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:17:01.166 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:01.166 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:02.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.849/180.0
2026-01-22T02:17:02.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:17:04.169 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:04.187 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:17:04.187 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:04.187 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:04.243 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.818/180.0
2026-01-22T02:17:06.273 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.793/180.0
2026-01-22T02:17:07.189 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:07.190 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:17:07.190 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:07.190 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:17:08.304 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.763/180.0
2026-01-22T02:17:10.193 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:10.210 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:17:10.210 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:10.210 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:10.328 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.732/180.0
2026-01-22T02:17:12.375 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.707/180.0
2026-01-22T02:17:12.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:17:13.213 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:13.231 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:17:13.231 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:13.231 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:17:14.443 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.66/180.0
2026-01-22T02:17:16.234 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:16.250 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:17:16.250 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:16.250 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:17:16.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.593/180.0
2026-01-22T02:17:18.574 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.509/180.0
2026-01-22T02:17:19.253 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:19.254 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:17:19.254 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:19.254 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:17:20.583 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.462/180.0
2026-01-22T02:17:22.257 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:22.276 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:17:22.276 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:22.276 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:17:22.646 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.453/180.0
2026-01-22T02:17:22.963 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:17:22.964 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:16:32.187717
2026-01-22T02:17:22.964 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:16:32.187717
2026-01-22T02:17:22.964 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:17:22.964 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:17:22.964 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:17:22.964 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:17:22&start_after=2026-01-21T00:17:22&end_after=2026-01-22T00:17:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:17:23.092 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:17:23.093 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:17:23.094 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:17:23.095 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:17:23.096 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:17:23.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:17:23.098 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:17:23.100 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:17:23.101 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:17:23.101 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:17:23.101 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:17:23.101 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:17:23.101 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 360.898737
2026-01-22T02:17:23.101 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:17:24.693 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.39/180.0
2026-01-22T02:17:25.104 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:17:25.127 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:17:25.127 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:17:25.127549    Obs time: 2026-01-22 00:23:24
2026-01-22T02:17:25.127 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:05:58.872451
2026-01-22T02:17:25.127 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  358
2026-01-22T02:17:25.127 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:17:25.279 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:25.280 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:17:25.280 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:25.280 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:26.718 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.343/180.0
2026-01-22T02:17:28.283 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:28.302 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:17:28.302 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:28.302 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:28.748 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.319/180.0
2026-01-22T02:17:30.795 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.289/180.0
2026-01-22T02:17:31.305 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:31.321 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:17:31.321 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:31.321 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:32.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:17:32.804 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.241/180.0
2026-01-22T02:17:34.324 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:34.341 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:17:34.341 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:34.341 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:17:34.834 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.233/180.0
2026-01-22T02:17:36.865 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.201/180.0
2026-01-22T02:17:37.344 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:37.345 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:17:37.345 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:37.345 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:17:38.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.171/180.0
2026-01-22T02:17:40.348 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:40.367 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:17:40.367 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:40.367 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:17:40.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.141/180.0
2026-01-22T02:17:42.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:17:42.972 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.11/180.0
2026-01-22T02:17:43.370 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:43.371 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:17:43.371 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:43.371 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:17:44.998 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.065/180.0
2026-01-22T02:17:46.374 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:46.395 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:17:46.395 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:46.395 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:47.023 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.038/180.0
2026-01-22T02:17:49.053 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 89.013/180.0
2026-01-22T02:17:49.398 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:49.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:17:49.417 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:49.417 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:51.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.982/180.0
2026-01-22T02:17:52.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:17:52.420 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:52.443 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:17:52.443 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:52.443 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:53.114 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.953/180.0
2026-01-22T02:17:55.144 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.923/180.0
2026-01-22T02:17:55.445 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:55.446 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:17:55.446 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:55.446 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:17:57.191 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.891/180.0
2026-01-22T02:17:58.449 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:17:58.466 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:17:58.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:17:58.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:17:59.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.845/180.0
2026-01-22T02:18:01.318 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.781/180.0
2026-01-22T02:18:01.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:01.471 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:18:01.471 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:01.471 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:18:02.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:18:03.349 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.717/180.0
2026-01-22T02:18:04.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:04.493 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:18:04.493 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:04.493 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:05.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.688/180.0
2026-01-22T02:18:07.442 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.64/180.0
2026-01-22T02:18:07.497 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:07.517 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:18:07.517 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:07.517 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:18:09.472 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.593/180.0
2026-01-22T02:18:10.520 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:10.540 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:18:10.540 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:10.540 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:11.503 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.563/180.0
2026-01-22T02:18:12.172 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:18:13.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.532/180.0
2026-01-22T02:18:13.541 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:13.543 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:18:13.543 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:13.543 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:15.559 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.507/180.0
2026-01-22T02:18:16.547 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:16.565 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:18:16.566 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:16.566 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:17.605 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.477/180.0
2026-01-22T02:18:19.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:19.593 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:18:19.593 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:19.594 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:19.673 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.43/180.0
2026-01-22T02:18:21.740 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.362/180.0
2026-01-22T02:18:22.183 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:18:22.185 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:17:32.386375
2026-01-22T02:18:22.185 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:17:32.386375
2026-01-22T02:18:22.185 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:18:22.186 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:18:22.186 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:18:22.187 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:18:22&start_after=2026-01-21T00:18:22&end_after=2026-01-22T00:18:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:18:22.299 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:18:22.300 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:18:22.302 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:18:22.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:18:22.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:18:22.305 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:18:22.306 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:18:22.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:18:22.308 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:18:22.308 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:18:22.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:18:22.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:18:22.308 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 301.691341
2026-01-22T02:18:22.309 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:18:22.597 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:22.618 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:18:22.619 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:22.619 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:23.809 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.296/180.0
2026-01-22T02:18:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:18:24.334 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:18:24.334 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:18:24.334322    Obs time: 2026-01-22 00:23:24
2026-01-22T02:18:24.334 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:59.665678
2026-01-22T02:18:24.334 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  299
2026-01-22T02:18:24.334 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:18:25.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:25.642 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:18:25.642 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:25.642 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:25.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.226/180.0
2026-01-22T02:18:27.945 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.158/180.0
2026-01-22T02:18:28.646 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:28.664 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:18:28.664 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:28.664 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:18:30.014 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.092/180.0
2026-01-22T02:18:31.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:18:31.668 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:31.670 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:18:31.670 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:31.670 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:18:32.082 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.021/180.0
2026-01-22T02:18:34.149 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 43.953/180.0
2026-01-22T02:18:34.673 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:34.694 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:18:34.695 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:34.695 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:18:36.217 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 41.887/180.0
2026-01-22T02:18:37.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:37.699 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:18:37.699 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:37.699 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:38.280 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 39.817/180.0
2026-01-22T02:18:40.310 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 37.755/180.0
2026-01-22T02:18:40.703 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:40.723 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:18:40.724 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:40.724 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:18:41.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:18:42.341 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 35.725/180.0
2026-01-22T02:18:43.727 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:43.746 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:18:43.746 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:43.746 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:44.371 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 33.694/180.0
2026-01-22T02:18:46.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 31.663/180.0
2026-01-22T02:18:46.749 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:46.769 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00099999999998. Last known sky angle: 180.0
2026-01-22T02:18:46.769 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:46.769 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00099999999998
2026-01-22T02:18:48.427 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.639/180.0
2026-01-22T02:18:49.772 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:49.775 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00099999999998
2026-01-22T02:18:49.775 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:49.775 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:18:50.458 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.608/180.0
2026-01-22T02:18:51.363 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:18:52.504 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.577/180.0
2026-01-22T02:18:52.778 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:52.795 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:18:52.796 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:52.796 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:18:54.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.531/180.0
2026-01-22T02:18:55.799 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:55.801 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:18:55.802 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:55.802 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:18:56.619 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.463/180.0
2026-01-22T02:18:58.649 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.416/180.0
2026-01-22T02:18:58.805 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:18:58.824 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:18:58.825 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:18:58.825 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:19:00.679 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.386/180.0
2026-01-22T02:19:01.373 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:19:01.828 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:01.854 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:19:01.855 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:01.855 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:19:02.709 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.357/180.0
2026-01-22T02:19:04.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.327/180.0
2026-01-22T02:19:04.857 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:04.873 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:19:04.873 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:04.873 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:19:06.786 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.281/180.0
2026-01-22T02:19:07.876 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:07.879 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:19:07.879 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:07.879 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:19:08.816 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.25/180.0
2026-01-22T02:19:10.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.221/180.0
2026-01-22T02:19:10.881 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:10.897 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:19:10.897 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:10.897 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:19:11.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:19:12.872 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.189/180.0
2026-01-22T02:19:13.900 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:13.901 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99900000000002. Last known sky angle: 179.99999999999997
2026-01-22T02:19:13.901 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:13.901 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99900000000002
2026-01-22T02:19:14.940 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.165/180.0
2026-01-22T02:19:16.904 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:16.922 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99900000000002
2026-01-22T02:19:16.923 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:16.923 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:19:17.009 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.097/180.0
2026-01-22T02:19:19.093 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:19.925 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:19.944 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:19:19.944 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:19.944 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:19:21.140 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:21.392 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:19:21.412 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:18:32.584305
2026-01-22T02:19:21.413 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:18:32.584305
2026-01-22T02:19:21.413 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:19:21.413 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:19:21.413 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:19:21.413 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:19:21&start_after=2026-01-21T00:19:21&end_after=2026-01-22T00:19:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:19:21.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:19:21.523 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:19:21.524 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:19:21.525 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:19:21.526 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:19:21.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:19:21.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:19:21.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:19:21.531 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:19:21.531 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:19:21.531 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:19:21.531 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:19:21.531 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 242.468556
2026-01-22T02:19:21.532 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:19:22.947 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:22.966 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:19:22.966 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:22.966 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:19:23.171 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:23.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:19:23.535 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:19:23.535 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:19:23.535347    Obs time: 2026-01-22 00:23:24
2026-01-22T02:19:23.535 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:04:00.464653
2026-01-22T02:19:23.535 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  240
2026-01-22T02:19:23.535 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:19:25.201 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:25.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:25.969 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:19:25.969 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:25.970 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:19:27.227 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:28.973 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:28.994 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:19:28.994 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:28.994 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:19:29.257 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:30.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:19:31.288 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:31.997 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:31.998 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:19:31.998 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:31.998 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:19:33.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:35.001 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:35.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:19:35.013 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:35.014 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:19:35.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:37.396 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:38.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:38.039 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.001. Last known sky angle: 180.00000000000003
2026-01-22T02:19:38.039 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:38.039 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.001
2026-01-22T02:19:39.459 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:40.552 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:19:41.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:41.058 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.001
2026-01-22T02:19:41.058 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:41.058 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:19:41.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:19:41.982 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:19:41.982 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:19:41.984 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:19:44.061 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:19:44.061 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-22T02:19:44.061 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-22T02:19:44.061 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:19:44.061 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:19:44.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:19:44.061 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:19:44.061 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:19:44.061 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:19:44.061 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:19:44.061 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:19:44.072 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:19:44.072 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:19:44.072 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T02:19:44.073 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:19:44.073 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:19:44.146 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:19:45.147 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T02:19:45.147 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T02:19:45.147 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:19:45.147 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:19:45.199 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:19:46.200 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:19:46.252 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:19:47.253 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:19:47.255 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.63
2026-01-22T02:19:47.255 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:19:38
2026-01-22T02:19:47.255 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:19:38
2026-01-22T02:19:47.255 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:19:47.255 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09258653543307084
2026-01-22T02:19:47.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T02:19:47.257 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T02:19:47.257 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T02:19:48.333 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:19:50.336 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T02:19:50.336 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:19:50.336 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:19:50.336 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:19:50.336 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:19:50.338 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:19:50.338 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:19:50.340 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:19:50.435 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:19:50.435 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:19:50.437 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041190.4372125
2026-01-22T02:19:50.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:19:50.837 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T02:19:50.837 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T02:19:51.337 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:51.355 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:19:51.355 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:51.355 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:19:54.358 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:19:54.359 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:19:54.359 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:19:54.359 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:19:55.957 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235437_13494_13540.json , Iteration 1/1, Unit 2/2 Detector state: IDLE Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T02:19:56.697 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:19:56.697 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:19:56.718 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:19:57.362 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:19:57.959 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-22T02:19:57.959 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:19:57.959 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:19:58.538 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:19:58.538 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_Feige56_17235437_13494_13540.json was run successfully
2026-01-22T02:19:58.538 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T02:19:58.538 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T02:19:58.538 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T02:19:58.538 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T02:19:58.538 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T02:19:58.538 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:19:58.538 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:19:59.039 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:19:59.039 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T02:19:59.039 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:19:59.039 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:19:59.039 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:19:59.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:19:59.039 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:19:59.039 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:19:59.039 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T02:19:59.059 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 12:08:09.38292   Targ dec = +11:31:09.0696
2026-01-22T02:19:59.060 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:19:59.060 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:19:59.060 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:19:59.066 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:19:59.066 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:19:59.066 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:19:59.066 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:20:00.092 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:20:00.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:20:02.093 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:20:02.093 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:20:02.093 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:20:02.542 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:20:02.542 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T02:20:02.543 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17514190 COMPLETED 13540 reason
2026-01-22T02:20:02.543 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17514190 COMPLETED 13540 reason
2026-01-22T02:20:02.543 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:20:02.543 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:20:02.543 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:20:02.543 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:20:02.543 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:20:02.543 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:20:05.546 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:20:05.546 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:20:07.548 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:20:07.548 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:20:07.548 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T02:20:07.548 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T02:20:07.548 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T02:20:07.550 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T02:20:07.550 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-22T00:23:24Z
2026-01-22T02:20:07.550 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T02:20:07.550 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T02:20:07.550 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T02:20:07.550 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T02:20:07.550 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T02:20:07.550 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:20:07.550 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:20:08.051 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:20:08.051 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T02:20:08.051 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:20:08.051 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:20:08.051 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:20:08.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:20:08.051 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:20:08.051 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:20:08.051 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T02:20:08.054 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 12:08:09.36564   Targ dec = +11:31:09.0696
2026-01-22T02:20:08.054 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:20:08.054 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:20:08.054 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:20:08.063 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:20:08.063 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:20:08.063 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:20:08.063 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:20:09.089 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:20:10.580 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:20:11.091 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:20:11.091 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:20:11.091 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:20:11.554 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:20:11.554 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T02:20:11.554 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T02:20:11.554 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T02:20:11.555 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T02:20:11.555 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17514190
2026-01-22T02:20:11.555 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T02:20:11.555 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T02:20:11.555 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-22T00:12:28', 'end': '2026-01-22T00:20:11', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '463.0', 'events': {}}} with config status ID 17514190
2026-01-22T02:20:11.737 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T02:20:11.737 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-22T00:12:10Z', 'guide_off', 'config_id 13540', 'config_status_id 17514190', 'update_OCS 17514190 ATTEMPTED', 'run_script setup_std_star_Feige56_17235437_13494_13540.json', 'run_script std_star_Feige56_17235437_13494_13540.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17514190 COMPLETED 13540 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-22T00:23:24Z', 'run_script arc_flat_lamp_off.json'] at time 02:20:11
2026-01-22T02:20:20.592 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:20:20.593 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:19:32.787162
2026-01-22T02:20:20.593 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:19:32.787162
2026-01-22T02:20:20.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:20:20.593 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:20:20.593 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:20:20.593 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:20:20&start_after=2026-01-21T00:20:20&end_after=2026-01-22T00:20:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:20:20.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:20:20.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:20:20.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:20:20.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:20:20.716 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:20:20.718 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:20:20.718 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:20:20.720 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:20:20.720 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:20:20.721 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:20:20.721 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:20:20.721 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:20:20.721 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 183.278809
2026-01-22T02:20:20.722 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:20:22.724 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:20:22.725 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:20:22.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:20:22.725202    Obs time: 2026-01-22 00:23:24
2026-01-22T02:20:22.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:03:01.274798
2026-01-22T02:20:22.725 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  181
2026-01-22T02:20:22.725 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:20:29.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:20:39.743 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:20:49.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:20:59.763 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:21:09.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:21:19.784 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:21:19.801 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:20:32.987848
2026-01-22T02:21:19.801 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:20:32.987848
2026-01-22T02:21:19.801 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:21:19.801 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:21:19.801 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:21:19.801 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:21:19&start_after=2026-01-21T00:21:19&end_after=2026-01-22T00:21:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:21:19.907 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:21:19.908 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:21:19.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:21:19.910 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:21:19.912 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:21:19.913 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:21:19.914 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:21:19.915 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:21:19.916 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:21:19.916 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:21:19.916 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:21:19.916 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:21:19.916 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 124.083406
2026-01-22T02:21:19.917 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:21:21.919 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:21:21.940 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:21:21.940 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:21:21.940245    Obs time: 2026-01-22 00:23:24
2026-01-22T02:21:21.940 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:02:02.059755
2026-01-22T02:21:21.940 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  122
2026-01-22T02:21:21.940 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:21:28.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:21:38.956 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:21:48.966 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:21:58.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:22:08.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:22:18.997 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:22:18.998 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:21:33.190056
2026-01-22T02:22:18.998 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:21:33.190056
2026-01-22T02:22:18.998 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:22:18.999 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:22:18.999 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:22:18.999 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:22:18&start_after=2026-01-21T00:22:18&end_after=2026-01-22T00:22:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:22:19.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:22:19.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:22:19.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:22:19.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:22:19.112 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:22:19.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:22:19.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:22:19.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:22:19.116 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:22:19.116 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:22:19.116 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:22:19.116 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:22:19.116 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64.883478
2026-01-22T02:22:19.117 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:22:21.119 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:22:21.120 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:22:21.120 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:22:21.120483    Obs time: 2026-01-22 00:23:24
2026-01-22T02:22:21.120 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:01:02.879517
2026-01-22T02:22:21.120 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  62
2026-01-22T02:22:21.120 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:22:28.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:22:38.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:22:48.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:22:58.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:23:08.169 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:23:18.179 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:23:18.198 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:22:33.399575
2026-01-22T02:23:18.198 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:22:33.399575
2026-01-22T02:23:18.198 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:23:18.198 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:23:18.198 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:23:18.198 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:23:18&start_after=2026-01-21T00:23:18&end_after=2026-01-22T00:23:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:23:18.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:23:18.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:23:18.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:23:18.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:23:18.312 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:23:18.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:23:18.314 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:23:18.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:23:18.316 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:23:18.316 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:23:18.316 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:23:18.316 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:23:18.316 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 5.683226
2026-01-22T02:23:18.317 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:23:20.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:23:20.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:23:20.342 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:23:20.342576    Obs time: 2026-01-22 00:23:24
2026-01-22T02:23:20.342 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  0:00:03.657424
2026-01-22T02:23:20.342 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  3
2026-01-22T02:23:20.342 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] No observations need starting. Waiting to poll
2026-01-22T02:23:27.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:23:37.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:23:47.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:23:57.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:24:07.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:24:17.402 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:24:17.403 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:23:33.598547
2026-01-22T02:24:17.403 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:23:33.598547
2026-01-22T02:24:17.403 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:24:17.403 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:24:17.403 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:24:17.403 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:24:17&start_after=2026-01-21T00:24:17&end_after=2026-01-22T00:24:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:24:17.512 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:24:17.513 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:24:17.515 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:24:17.516 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:24:17.517 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:24:17.518 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:24:17.519 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:24:17.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:24:17.521 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:24:17.521 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T02:24:17.521 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:24:17.521 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T00:23:24Z
2026-01-22T02:24:17.521 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: -53.521911
2026-01-22T02:24:17.522 [INFO] [Poll thread] [schedule_poller.py] [do_startup()] No startup required. Telescope is already open
2026-01-22T02:24:19.524 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Checking that the telescope is ready
2026-01-22T02:24:19.525 [INFO] [Poll thread] [schedule_poller.py] [poll()] The telescope is open
2026-01-22T02:24:19.525 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Current time: 2026-01-22 00:24:19.525745    Obs time: 2026-01-22 00:23:24
2026-01-22T02:24:19.525 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference =  -1 day, 23:59:04.474255
2026-01-22T02:24:19.525 [DEBUG] [Poll thread] [schedule_poller.py] [time_is_past()] Time difference (seconds) =  86344
2026-01-22T02:24:19.525 [INFO] [Poll thread] [schedule_poller.py] [poll()] Starting execution of ['select Mookodi', 'guide_off', 'start_time 2026-01-22T00:23:24Z', 'guide_off', 'config_id 13539', 'config_status_id 17514335', 'update_OCS 17514335 ATTEMPTED', 'run_script setup_std_star_Feige56_17235582_13493_13539.json', 'run_script std_star_Feige56_17235582_13493_13539.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17514335 COMPLETED 13539 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-22T00:34:38Z', 'run_script arc_flat_lamp_off.json']
2026-01-22T02:24:19.525 [DEBUG] [Poll thread] [schedule_poller.py] [start_execution()] Start the next configuration
2026-01-22T02:24:19.526 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Running the configuration
2026-01-22T02:24:19.526 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering select Mookodi
2026-01-22T02:24:19.526 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: select Mookodi
2026-01-22T02:24:19.526 [INFO] [Poll thread] [schedule_poller.py] [poll()] Execution started
2026-01-22T02:24:19.526 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing select instrument Mookodi
2026-01-22T02:24:19.526 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] The instrument currently selected on the telescope is Mookodi
2026-01-22T02:24:19.527 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Full names: {0: 'Sibonise', 1: 'Mookodi'}
2026-01-22T02:24:19.527 [DEBUG] [Execution thread] [tlc.py] [get_current_instrument()] Current instrument is Mookodi at index 1
2026-01-22T02:24:19.527 [DEBUG] [Execution thread] [schedule_poller.py] [do_select()] Mookodi was already selected
2026-01-22T02:24:19.527 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:24:19.527 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:24:19.527 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:24:19.527 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:24:19.527 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:24:19.527 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:24:22.530 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:24:22.530 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:24:24.532 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:24:24.532 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:24:24.532 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering start_time 2026-01-22T00:23:24Z
2026-01-22T02:24:24.532 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: start_time 2026-01-22T00:23:24Z
2026-01-22T02:24:24.532 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:24:24.532 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:24:24.532 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:24:24.532 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:24:24.532 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:24:24.532 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:24:26.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:24:27.535 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:24:27.536 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:24:29.538 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:24:29.538 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:24:29.586 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_id 13539
2026-01-22T02:24:29.586 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_id 13539
2026-01-22T02:24:29.586 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering config_status_id 17514335
2026-01-22T02:24:29.586 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: config_status_id 17514335
2026-01-22T02:24:29.586 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17514335 ATTEMPTED
2026-01-22T02:24:29.586 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17514335 ATTEMPTED
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script setup_std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:24:29.587 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script setup_std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name setup_std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:24:29.587 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script setup_std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:24:29.587 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'telescope': {'targ_ra': 12.1131, 'targ_dec': 11.670135365016106, 'type': 'ICRS'}, 'instrument': {'target_acquisition': {'acquire_nearest': True, 'acquire_target': True, 'targ_ra': '12:06:47.22', 'targ_dec': '11:40:12.49', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON', 'flat_lamp': 'OFF', 'arc_lamp': 'OFF', 'arc_mirror': 'OUT', 'slit': 'OUT', 'grism': 'OUT', 'filterA': 0, 'filterB': 1, 'shutter_mode': 'ALWAYS_OPEN'}}, 'do_exposure': False}], 'script_name': 'setup_std_star_Feige56_17235582_13493_13539.json'}
2026-01-22T02:24:29.587 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:24:29.587 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [attempted]
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17514335
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = No reason given
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with ATTEMPTED
2026-01-22T02:24:29.587 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'ATTEMPTED'} with config status ID 17514335
2026-01-22T02:24:29.658 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T02:24:30.087 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:24:30.087 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script setup_std_star_Feige56_17235582_13493_13539.json 1 times
2026-01-22T02:24:30.087 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:24:30.089 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging telescope
2026-01-22T02:24:30.089 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telscript type = ICRS
2026-01-22T02:24:30.089 [INFO] [script_worker] [telescope.py] [stage_script()] Staging telescope script: 
2026-01-22T02:24:33.113 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T02:24:34.133 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T02:24:35.154 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T02:24:36.174 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Rotator is moving
2026-01-22T02:24:36.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:24:37.195 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready. Now check that it's roughly on target
2026-01-22T02:24:37.196 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope ra =  12.1134237185319 is close enough to target ra = 12.1131
2026-01-22T02:24:37.196 [DEBUG] [script_worker] [telescope.py] [is_on_target()] Telescope dec =  11.6671572205488 is close enough to target dec = 11.670135365016106
2026-01-22T02:24:37.196 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Telescope is ready and approximately on target
2026-01-22T02:24:37.196 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:24:37.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:24:37.196 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:24:37.196 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:24:37.197 [INFO] [script_worker] [instrument.py] [stage_script()] Will acquire target
2026-01-22T02:24:37.197 [INFO] [script_worker] [instrument.py] [stage_script()] Staging acquisition scriptlet
2026-01-22T02:24:37.206 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:24:37.206 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:24:37.280 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:24:38.281 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:24:38.281 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:24:38.333 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:24:39.334 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:24:39.386 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:24:40.387 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:24:40.388 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.07
2026-01-22T02:24:40.389 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:22:18
2026-01-22T02:24:40.389 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:22:18
2026-01-22T02:24:40.389 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:24:40.389 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09231976377952754
2026-01-22T02:24:40.392 [INFO] [script_worker] [instrument.py] [stage_script()] Acquiring target
2026-01-22T02:24:40.392 [INFO] [script_worker] [instrument.py] [acquire_target()] Beginning of WCS acquisition
2026-01-22T02:24:40.392 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Clearing optics out of the way
2026-01-22T02:24:40.400 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:24:40.400 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:24:40.439 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:24:41.440 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:24:41.440 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:24:41.492 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:24:42.493 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:24:42.544 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:24:43.546 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:24:43.547 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.07
2026-01-22T02:24:43.547 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:22:18
2026-01-22T02:24:43.547 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:22:18
2026-01-22T02:24:43.547 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:24:43.547 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09231976377952754
2026-01-22T02:24:46.552 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:24:48.578 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking an exposure
2026-01-22T02:24:48.578 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:24:48.578 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:24:48.578 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:24:48.578 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:24:48.578 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:24:48.580 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:24:48.580 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:24:48.582 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:24:48.693 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:24:48.693 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:24:48.695 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041488.6950703
2026-01-22T02:24:53.957 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:24:53.957 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:24:53.975 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:24:54.088 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS in acquire_target
2026-01-22T02:24:56.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:24:58.092 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS in acquire_target
2026-01-22T02:24:58.093 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for WCS to complete
2026-01-22T02:25:06.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:25:16.584 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:25:16.602 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:24:33.800646
2026-01-22T02:25:16.602 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:24:33.800646
2026-01-22T02:25:16.602 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:25:16.602 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:25:16.602 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:25:16.602 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:25:16&start_after=2026-01-21T00:25:16&end_after=2026-01-22T00:25:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:25:16.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:25:16.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:25:16.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:25:16.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:25:16.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:25:16.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:25:16.716 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:25:16.717 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:25:16.717 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:25:16.717 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:25:16.717 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:25:16.717 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65969.28263
2026-01-22T02:25:16.717 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:25:25.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:25:28.210 [ERROR] [script_worker] [instrument.py] [acquire_target()] WCS file not found after 3 seconds
2026-01-22T02:25:28.210 [INFO] [script_worker] [instrument.py] [acquire_target()] Done  Waiting for WCS to complete
2026-01-22T02:25:28.210 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T02:25:28.211 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 12:06:47.22 = 654108.3 arcseconds
2026-01-22T02:25:28.211 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 11:40:12.49 = 42012.49 arcseconds
2026-01-22T02:25:28.211 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-22T02:25:28.231 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T02:25:33.237 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Taking image after nudge
2026-01-22T02:25:33.237 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:25:33.237 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:25:33.237 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:25:33.238 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:25:33.238 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:25:33.239 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:25:33.240 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:25:33.241 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:25:33.359 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:25:33.359 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:25:33.361 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041533.361679
2026-01-22T02:25:34.739 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T02:25:35.736 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:25:37.620 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:25:37.620 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:25:37.641 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:25:37.746 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS after acquire_target
2026-01-22T02:25:41.750 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for call to WCS after acquire_target to complete
2026-01-22T02:25:45.741 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:25:55.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:26:05.761 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:26:11.861 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Done calling go_WCS after acquire_target
2026-01-22T02:26:11.861 [INFO] [script_worker] [instrument.py] [acquire_target()] Nudging the telescope to the magic pixel
2026-01-22T02:26:11.862 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target RA 12:06:47.22 = 654108.3 arcseconds
2026-01-22T02:26:11.862 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Target dec 11:40:12.49 = 42012.49 arcseconds
2026-01-22T02:26:11.862 [DEBUG] [script_worker] [instrument.py] [nudge_to_slit()] Magic pixel:  616, 585
2026-01-22T02:26:11.882 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Started nudging the telescope to the magic pixel
2026-01-22T02:26:15.771 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:26:15.790 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:25:34.014217
2026-01-22T02:26:15.820 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:25:34.014217
2026-01-22T02:26:15.820 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:26:15.820 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:26:15.820 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:26:15.820 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:26:15&start_after=2026-01-21T00:26:15&end_after=2026-01-22T00:26:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:26:15.925 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:26:15.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:26:15.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:26:15.929 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:26:15.930 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:26:15.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:26:15.933 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:26:15.934 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:26:15.934 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:26:15.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:26:15.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:26:15.934 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65910.065692
2026-01-22T02:26:15.934 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:26:16.904 [INFO] [script_worker] [instrument.py] [acquire_target()] Taking image to check success
2026-01-22T02:26:16.904 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:26:16.904 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:26:16.904 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:26:16.905 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:26:16.905 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:26:16.906 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:26:16.907 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:26:16.908 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:26:17.010 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:26:17.010 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:26:17.012 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041577.0121887
2026-01-22T02:26:18.406 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T02:26:21.270 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:26:21.270 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:26:21.272 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:26:21.413 [INFO] [script_worker] [instrument.py] [acquire_target()] Calling go_WCS again after acquire_target
2026-01-22T02:26:24.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:26:25.980 [DEBUG] [script_worker] [instrument.py] [go_nudge_star_to_slit()] no sources
2026-01-22T02:26:28.010 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = []
2026-01-22T02:26:28.010 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:26:28.010 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:26:28.011 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:26:28.011 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:26:28.012 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:26:28.012 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:26:28.014 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:26:28.146 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:26:28.147 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:26:28.149 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041588.1490417
2026-01-22T02:26:29.512 [DEBUG] [script_worker] [instrument.py] [acquire_target()] Waiting for exposure to complete
2026-01-22T02:26:32.409 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:26:32.409 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:26:32.431 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:26:32.518 [INFO] [script_worker] [instrument.py] [stage_script()] Setting guiding ON
2026-01-22T02:26:34.980 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:26:36.187 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  3069  8705  14.3 to host 127.0.0.1 on port 12360
2026-01-22T02:26:36.187 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:26:36.187 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:26:39.191 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command pos_XYslides  3069  8705  14.3
2026-01-22T02:26:39.191 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command pos_XYslides  3069  8705  14.3
2026-01-22T02:26:41.193 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:26:45.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:26:55.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:27:05.026 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:27:15.036 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:27:15.037 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:26:34.216909
2026-01-22T02:27:15.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:26:34.216909
2026-01-22T02:27:15.037 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:27:15.037 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:27:15.037 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:27:15.037 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:27:15&start_after=2026-01-21T00:27:15&end_after=2026-01-22T00:27:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:27:15.142 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:27:15.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:27:15.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:27:15.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:27:15.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:27:15.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:27:15.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:27:15.150 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:27:15.150 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:27:15.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:27:15.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:27:15.151 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65850.848912
2026-01-22T02:27:15.151 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:27:20.232 [INFO] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on to host 127.0.0.1 on port 12360
2026-01-22T02:27:20.232 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:27:20.232 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:27:23.235 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sending command Guide_on
2026-01-22T02:27:23.235 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Sent command Guide_on
2026-01-22T02:27:24.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:27:25.237 [DEBUG] [script_worker] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:27:25.237 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:27:25.237 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:27:25.237 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:27:25.238 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:27:25.238 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:27:25.238 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:27:25.238 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:27:26.266 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:27:28.268 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:27:28.268 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:27:28.268 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:27:28.857 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:27:28.857 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script setup_std_star_Feige56_17235582_13493_13539.json was run successfully
2026-01-22T02:27:28.857 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:27:28.857 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:27:28.857 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:27:28.857 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script std_star_Feige56_17235582_13493_13539.json
2026-01-22T02:27:28.857 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_units': [{'unit_number': 1, 'instrument': {'object': 'Feige56', 'observer': 'io_robot', 'gain': 'HIGH', 'binx': '1', 'biny': '1', 'readout_speed': 'SLOW', 'shutter_mode': 'AUTO', 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': '12:06:47.22', 'targ_dec': '11:40:12.49', 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}, 'exposure_time': 180000, 'num_exposures': 1}}, {'unit_number': 2, 'instrument': {'shutter_mode': 'AUTO', 'exposure_time': 4000, 'num_exposures': 1, 'readout_speed': 'FAST', 'gain': 'HIGH', 'binx': 1, 'biny': 1, 'slit': 'IN', 'grism': 'IN', 'arc_mirror': 'IN', 'arc_lamp': 'ON', 'flat_lamp': 'OFF', 'filterA': 0, 'filterB': 1, 'target_acquisition': {'acquire_target': False, 'targ_ra': None, 'targ_dec': None, 'binx': 1, 'biny': 1, 'magic_x': 616, 'magic_y': 585, 'exposure_time': 2000, 'readout_speed': 'FAST', 'gain': 'HIGH', 'guide': 'ON'}}}], 'script_name': 'std_star_Feige56_17235582_13493_13539.json'}
2026-01-22T02:27:28.857 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:27:28.857 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:27:29.358 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:27:29.358 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script std_star_Feige56_17235582_13493_13539.json 1 times
2026-01-22T02:27:29.358 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 2: 1
2026-01-22T02:27:29.358 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:27:29.358 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:27:29.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:27:29.358 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:27:29.358 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:27:29.358 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:27:29.358 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:27:29.358 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:27:29.368 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:27:29.369 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:27:29.369 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T02:27:29.369 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:27:29.369 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:27:29.418 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:27:30.419 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T02:27:30.419 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T02:27:30.419 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:27:30.419 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:27:30.470 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:27:31.471 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:27:31.523 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:27:32.524 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:27:32.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 19.96
2026-01-22T02:27:32.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:26:35
2026-01-22T02:27:32.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:26:35
2026-01-22T02:27:32.525 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:27:32.526 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09238645669291337
2026-01-22T02:27:32.528 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T02:27:32.528 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:27:32.528 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:27:33.555 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:27:34.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:27:35.558 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='12:06:47.22', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val='11:40:12.49', comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='io_robot', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='Feige56', comment='The object name')]
2026-01-22T02:27:35.558 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:27:35.558 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:27:35.558 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:27:35.558 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:27:35.560 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:27:35.560 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:27:35.562 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:27:35.662 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:27:35.662 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:27:35.664 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041655.664534
2026-01-22T02:27:36.059 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T02:27:36.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T02:27:36.560 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:36.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:27:36.580 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:36.580 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:27:39.583 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:39.599 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:27:39.599 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:39.600 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:27:41.135 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 174.569/180.0
2026-01-22T02:27:42.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:42.603 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:27:42.603 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:42.604 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:27:43.182 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 172.529/180.0
2026-01-22T02:27:44.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:27:45.223 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 170.483/180.0
2026-01-22T02:27:45.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:45.622 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:27:45.622 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:45.622 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:27:47.254 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 168.442/180.0
2026-01-22T02:27:48.625 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:48.626 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:27:48.626 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:48.626 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:27:49.300 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 166.411/180.0
2026-01-22T02:27:51.368 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 164.364/180.0
2026-01-22T02:27:51.629 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:51.647 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:27:51.647 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:51.648 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:27:53.415 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 162.296/180.0
2026-01-22T02:27:54.187 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:27:54.651 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:54.669 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:27:54.669 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:54.669 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:27:55.440 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 160.25/180.0
2026-01-22T02:27:57.482 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 158.224/180.0
2026-01-22T02:27:57.672 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:27:57.691 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:27:57.692 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:27:57.692 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:27:59.512 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 156.183/180.0
2026-01-22T02:28:00.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:00.695 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 179.99999999999997
2026-01-22T02:28:00.696 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:00.696 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T02:28:01.542 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 154.154/180.0
2026-01-22T02:28:03.568 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 152.122/180.0
2026-01-22T02:28:03.697 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:03.714 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-22T02:28:03.714 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:03.714 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:28:04.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:28:05.598 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 150.098/180.0
2026-01-22T02:28:06.717 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:06.718 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:28:06.718 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:06.718 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:28:07.645 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 148.067/180.0
2026-01-22T02:28:09.713 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 146.02/180.0
2026-01-22T02:28:09.721 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:09.742 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:28:09.742 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:09.742 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:28:11.781 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 143.952/180.0
2026-01-22T02:28:12.745 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:12.764 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:28:12.764 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:12.764 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:13.849 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 141.884/180.0
2026-01-22T02:28:14.206 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:28:14.207 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:27:34.421670
2026-01-22T02:28:14.207 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:27:34.421670
2026-01-22T02:28:14.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:28:14.207 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:28:14.207 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:28:14.207 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:28:14&start_after=2026-01-21T00:28:14&end_after=2026-01-22T00:28:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:28:14.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:28:14.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:28:14.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:28:14.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:28:14.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:28:14.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:28:14.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:28:14.332 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:28:14.332 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:28:14.332 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:28:14.332 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:28:14.332 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65791.667069
2026-01-22T02:28:14.332 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:28:15.765 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:15.783 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:15.783 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:15.783 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:15.895 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 139.816/180.0
2026-01-22T02:28:17.926 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 137.77/180.0
2026-01-22T02:28:18.786 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:18.787 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:28:18.795 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:18.795 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:28:19.956 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 135.741/180.0
2026-01-22T02:28:21.797 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:21.815 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:28:21.815 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:21.815 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:28:22.003 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 133.71/180.0
2026-01-22T02:28:23.339 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:28:24.028 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 131.662/180.0
2026-01-22T02:28:24.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:24.818 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:28:24.818 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:24.818 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:28:26.059 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 129.638/180.0
2026-01-22T02:28:27.821 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:27.841 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:28:27.841 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:27.841 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:28:28.084 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 127.606/180.0
2026-01-22T02:28:30.109 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 125.581/180.0
2026-01-22T02:28:30.844 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:30.863 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:28:30.863 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:30.863 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:32.139 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 123.556/180.0
2026-01-22T02:28:33.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:28:33.866 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:33.886 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:33.886 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:33.886 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:34.170 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 121.526/180.0
2026-01-22T02:28:36.211 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 119.495/180.0
2026-01-22T02:28:36.889 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:36.890 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:36.890 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:36.890 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:38.258 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 117.454/180.0
2026-01-22T02:28:39.893 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:39.915 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:39.915 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:39.915 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:40.305 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 115.408/180.0
2026-01-22T02:28:42.335 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 113.36/180.0
2026-01-22T02:28:42.917 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:42.918 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:42.918 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:42.918 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:43.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:28:44.365 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 111.33/180.0
2026-01-22T02:28:45.921 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:45.937 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:45.937 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:45.938 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:46.391 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 109.299/180.0
2026-01-22T02:28:48.437 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 107.274/180.0
2026-01-22T02:28:48.941 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:48.962 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:28:48.962 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:48.962 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:28:50.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 105.228/180.0
2026-01-22T02:28:51.965 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:51.984 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:28:51.984 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:51.984 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:28:52.498 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 103.197/180.0
2026-01-22T02:28:53.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:28:54.528 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 101.167/180.0
2026-01-22T02:28:54.987 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:54.988 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:28:54.988 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:54.988 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:56.554 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 99.136/180.0
2026-01-22T02:28:57.991 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:28:58.013 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:28:58.014 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:28:58.014 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:28:58.579 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 97.111/180.0
2026-01-22T02:29:00.609 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 95.086/180.0
2026-01-22T02:29:01.017 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:01.018 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:29:01.018 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:01.018 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:02.656 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 93.055/180.0
2026-01-22T02:29:03.377 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:29:04.021 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:04.041 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:29:04.044 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:04.044 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:04.703 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 91.009/180.0
2026-01-22T02:29:06.733 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 88.962/180.0
2026-01-22T02:29:07.047 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:07.064 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:29:07.064 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:07.064 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:29:08.763 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 86.932/180.0
2026-01-22T02:29:10.065 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:10.084 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:29:10.084 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:10.084 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:29:10.794 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 84.901/180.0
2026-01-22T02:29:12.840 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 82.871/180.0
2026-01-22T02:29:13.087 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:13.089 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:29:13.089 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:13.089 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:29:13.388 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:29:13.408 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:28:34.619697
2026-01-22T02:29:13.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:28:34.619697
2026-01-22T02:29:13.408 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:29:13.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:29:13.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:29:13.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:29:13&start_after=2026-01-21T00:29:13&end_after=2026-01-22T00:29:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:29:13.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:29:13.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:29:13.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:29:13.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:29:13.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:29:13.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:29:13.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:29:13.576 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:29:13.576 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:29:13.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:29:13.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:29:13.576 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65732.423296
2026-01-22T02:29:13.576 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:29:14.871 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 80.826/180.0
2026-01-22T02:29:16.092 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:16.109 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:29:16.109 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:16.109 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:16.896 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 78.794/180.0
2026-01-22T02:29:18.921 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 76.77/180.0
2026-01-22T02:29:19.112 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:19.113 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:29:19.113 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:19.113 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:20.952 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 74.743/180.0
2026-01-22T02:29:22.116 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:22.135 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:29:22.135 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:22.135 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:22.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:29:22.982 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 72.714/180.0
2026-01-22T02:29:25.013 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 70.684/180.0
2026-01-22T02:29:25.138 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:25.159 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:29:25.159 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:25.159 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:27.043 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 68.652/180.0
2026-01-22T02:29:28.161 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:28.178 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:29:28.178 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:28.178 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:29:29.112 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 66.622/180.0
2026-01-22T02:29:31.152 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 64.554/180.0
2026-01-22T02:29:31.181 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:31.202 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:29:31.202 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:31.202 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:32.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:29:33.183 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 62.514/180.0
2026-01-22T02:29:34.205 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:34.222 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:29:34.222 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:34.222 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:35.208 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 60.482/180.0
2026-01-22T02:29:37.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:37.225 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:29:37.226 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:37.226 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:37.234 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 58.458/180.0
2026-01-22T02:29:39.264 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 56.431/180.0
2026-01-22T02:29:40.229 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:40.245 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:29:40.245 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:40.245 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:41.311 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 54.402/180.0
2026-01-22T02:29:42.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:29:43.248 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:43.267 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:29:43.267 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:43.267 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:29:43.357 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 52.354/180.0
2026-01-22T02:29:45.404 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 50.309/180.0
2026-01-22T02:29:46.270 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:46.285 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:29:46.285 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:46.285 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:29:47.413 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 48.262/180.0
2026-01-22T02:29:49.288 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:49.289 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 179.99999999999997
2026-01-22T02:29:49.289 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:49.289 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:29:49.460 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 46.252/180.0
2026-01-22T02:29:51.491 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 44.206/180.0
2026-01-22T02:29:52.292 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:52.312 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.99999999999997
2026-01-22T02:29:52.312 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:52.312 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:52.612 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:29:53.516 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 42.174/180.0
2026-01-22T02:29:55.315 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:55.316 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:29:55.316 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:55.316 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:55.541 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 40.15/180.0
2026-01-22T02:29:57.567 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 38.124/180.0
2026-01-22T02:29:58.317 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:29:58.333 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:29:58.333 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:29:58.333 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:29:59.597 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 36.098/180.0
2026-01-22T02:30:01.336 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:01.354 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:30:01.354 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:01.354 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:01.628 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 34.068/180.0
2026-01-22T02:30:02.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:30:03.669 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 32.038/180.0
2026-01-22T02:30:04.357 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:04.377 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.0
2026-01-22T02:30:04.377 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:04.377 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:30:05.695 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 29.995/180.0
2026-01-22T02:30:07.380 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:07.381 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:30:07.381 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:07.381 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:07.726 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 27.97/180.0
2026-01-22T02:30:09.756 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 25.939/180.0
2026-01-22T02:30:10.384 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:10.409 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:30:10.409 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:10.409 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:30:11.787 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 23.909/180.0
2026-01-22T02:30:12.634 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:30:12.657 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:29:34.820895
2026-01-22T02:30:12.657 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:29:34.820895
2026-01-22T02:30:12.657 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:30:12.658 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:30:12.658 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:30:12.658 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:30:12&start_after=2026-01-21T00:30:12&end_after=2026-01-22T00:30:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:30:12.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:30:12.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:30:12.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:30:12.788 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:30:12.794 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:30:12.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:30:12.800 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:30:12.802 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:30:12.802 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:30:12.802 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:30:12.802 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:30:12.803 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65673.196953
2026-01-22T02:30:12.803 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:30:13.412 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:13.414 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:30:13.415 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:13.415 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:30:13.873 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 21.877/180.0
2026-01-22T02:30:15.941 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 19.791/180.0
2026-01-22T02:30:16.417 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:16.434 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:30:16.434 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:16.434 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:18.004 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 17.725/180.0
2026-01-22T02:30:19.437 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:19.439 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:30:19.440 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:19.440 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:30:20.067 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 15.66/180.0
2026-01-22T02:30:21.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:30:22.129 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 13.598/180.0
2026-01-22T02:30:22.442 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:22.465 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.99999999999997. Last known sky angle: 180.00000000000003
2026-01-22T02:30:22.466 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:22.466 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.99999999999997
2026-01-22T02:30:24.209 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 11.537/180.0
2026-01-22T02:30:25.469 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:25.471 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 179.99999999999997
2026-01-22T02:30:25.471 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:25.472 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:26.272 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 9.456/180.0
2026-01-22T02:30:28.302 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 7.392/180.0
2026-01-22T02:30:28.475 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:28.496 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T02:30:28.496 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:28.496 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T02:30:30.349 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 5.362/180.0
2026-01-22T02:30:31.499 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:31.523 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-22T02:30:31.524 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:31.524 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:30:31.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:30:32.390 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 3.315/180.0
2026-01-22T02:30:34.421 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 1.274/180.0
2026-01-22T02:30:34.527 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:34.548 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:30:34.549 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:34.549 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:36.468 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:37.552 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:37.569 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:30:37.569 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:37.569 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:38.536 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:40.573 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:40.575 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:30:40.575 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:40.575 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:40.604 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:41.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:30:42.688 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:43.578 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:43.580 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.0
2026-01-22T02:30:43.581 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:43.581 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:30:44.735 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:46.584 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:46.605 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 180.00000000000003
2026-01-22T02:30:46.605 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:46.605 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:30:46.760 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:48.791 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:49.608 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:49.610 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.00000000000003
2026-01-22T02:30:49.611 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:49.611 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:50.817 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:51.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:30:52.614 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:52.637 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:30:52.637 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:52.637 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:52.847 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:54.877 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:55.638 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:55.657 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:30:55.658 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:55.658 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:56.908 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:58.661 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:30:58.677 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.0. Last known sky angle: 180.0
2026-01-22T02:30:58.678 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:30:58.678 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.0
2026-01-22T02:30:58.971 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 1/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/180.0
2026-01-22T02:30:59.399 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:30:59.399 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:30:59.406 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:31:01.681 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:31:01.681 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 1 of 2
2026-01-22T02:31:01.681 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 2 of 2: 2
2026-01-22T02:31:01.681 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:31:01.682 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:31:01.682 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:31:01.682 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:31:01.682 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:31:01.682 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:31:01.683 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:31:01.683 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:31:01.698 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:31:01.701 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:31:01.701 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter A ID = 0
2026-01-22T02:31:01.701 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 0:0
2026-01-22T02:31:01.701 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:31:01.754 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:31:01.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:31:02.755 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter A to 0
2026-01-22T02:31:02.756 [DEBUG] [script_worker] [instrument.py] [stage_script()] Filter B ID = 1
2026-01-22T02:31:02.765 [INFO] [script_worker] [instrument.py] [set_filter()] Setting filter 1:1
2026-01-22T02:31:02.765 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 1 to filter id 1
2026-01-22T02:31:02.807 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 1  moved to position 0 successfully
2026-01-22T02:31:03.808 [INFO] [script_worker] [client.py] [set_filter()] Setting filter slide ID 0 to filter id 0
2026-01-22T02:31:03.860 [INFO] [script_worker] [client.py] [set_filter()] Filter in slide 0  moved to position 0 successfully
2026-01-22T02:31:04.861 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting the focus by temperature
2026-01-22T02:31:04.864 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got temperature = 20.07
2026-01-22T02:31:04.864 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp 2026-01-22 02:30:20
2026-01-22T02:31:04.864 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Weather time stamp iso 2026-01-22T02:30:20
2026-01-22T02:31:04.865 [DEBUG] [script_worker] [instrument.py] [set_temp_focus()] Got parameters for focus at temp: -15.4, 2654
2026-01-22T02:31:04.865 [INFO] [script_worker] [instrument.py] [set_temp_focus()] Setting focus to 0.09231976377952754
2026-01-22T02:31:04.869 [DEBUG] [script_worker] [instrument.py] [stage_script()] Set filter b to 1
2026-01-22T02:31:04.869 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 6 specified
2026-01-22T02:31:04.869 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 6
2026-01-22T02:31:05.899 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:31:07.904 [INFO] [script_worker] [instrument.py] [start_exposure()] start_exposure called with fits_info = [FitsInfoType(key='TARG_RA', valtype='string', val='NA', comment='The target right ascension'), FitsInfoType(key='TARG_DEC', valtype='string', val=None, comment='The target declination'), FitsInfoType(key='OBSERVER', valtype='string', val='NA', comment='The observer name'), FitsInfoType(key='OBJECT', valtype='string', val='NA', comment='The object name')]
2026-01-22T02:31:07.904 [INFO] [script_worker] [instrument.py] [start_exposure()] Called instrument start_exposure() with continuous = False
2026-01-22T02:31:07.953 [DEBUG] [script_worker] [instrument.py] [start_exposure()] Starting thread to handle exposures
2026-01-22T02:31:07.954 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure worker thread with continuous = False
2026-01-22T02:31:07.954 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: setting up exposures
2026-01-22T02:31:07.957 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Worker thread: doing 1 exposures
2026-01-22T02:31:07.958 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:31:07.964 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:31:08.083 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Taking 1 exposures
2026-01-22T02:31:08.083 [INFO] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Starting exposure 1 of 1
2026-01-22T02:31:08.086 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Actual start time = 1769041868.0868094
2026-01-22T02:31:08.455 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor starting
2026-01-22T02:31:08.456 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Derotation monitoring thread started
2026-01-22T02:31:08.956 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:31:08.978 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 179.999. Last known sky angle: 180.0
2026-01-22T02:31:08.979 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:31:08.979 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 179.999
2026-01-22T02:31:11.865 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:31:11.866 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:30:35.022930
2026-01-22T02:31:11.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:30:35.022930
2026-01-22T02:31:11.866 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:31:11.866 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:31:11.867 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:31:11.867 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:31:11&start_after=2026-01-21T00:31:11&end_after=2026-01-22T00:31:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:31:11.982 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] In a sequence. Checking for derotation
2026-01-22T02:31:11.983 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Curr sky angle: 180.00000000000003. Last known sky angle: 179.999
2026-01-22T02:31:11.983 [DEBUG] [derotation_worker] [script_runner.py] [angle_changed()] Angle did NOT change
2026-01-22T02:31:11.983 [DEBUG] [derotation_worker] [script_runner.py] [derotation_worker()] Sky angle recorded as 180.00000000000003
2026-01-22T02:31:11.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:31:11.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:31:11.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:31:11.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:31:11.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:31:11.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:31:11.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:31:12.000 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:31:12.000 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:31:12.000 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:31:12.000 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:31:12.000 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65613.999391
2026-01-22T02:31:12.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] NOT shutting down - there's a configuration running
2026-01-22T02:31:13.544 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Waiting for unit to complete. Script: std_star_Feige56_17235582_13493_13539.json , Iteration 1/1, Unit 2/2 Detector state: EXPOSING Exposure 1/1, Remaining exp time 0.0/4.0
2026-01-22T02:31:14.360 [DEBUG] [start_exposure_worker] [instrument.py] [start_exposure_worker()] Exposure 1 of 1 done. Exposure state = 0
2026-01-22T02:31:14.360 [DEBUG] [start_exposure_worker] [instrument.py] [gather_fits_info()] Mookodi Instrument: Gathering fits info
2026-01-22T02:31:14.379 [DEBUG] [start_exposure_worker] [client.py] [gather_fits_info()] Gathering weather fits info
2026-01-22T02:31:14.986 [INFO] [derotation_worker] [script_runner.py] [derotation_worker()] Derotation monitor exiting
2026-01-22T02:31:15.545 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed unit number 2 of 2
2026-01-22T02:31:15.545 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:31:15.545 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:31:16.071 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:31:16.071 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script std_star_Feige56_17235582_13493_13539.json was run successfully
2026-01-22T02:31:16.071 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T02:31:16.071 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T02:31:16.071 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T02:31:16.071 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T02:31:16.071 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T02:31:16.071 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:31:16.071 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:31:16.572 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:31:16.572 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T02:31:16.572 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:31:16.572 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:31:16.572 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:31:16.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:31:16.572 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:31:16.572 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:31:16.572 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T02:31:16.595 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 12:08:09.3678   Targ dec = +11:31:09.0552
2026-01-22T02:31:16.595 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:31:16.595 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:31:16.595 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:31:16.601 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:31:16.602 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:31:16.602 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:31:16.602 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:31:17.631 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:31:19.633 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:31:19.633 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:31:19.633 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:31:20.075 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:31:20.075 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T02:31:20.075 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering update_OCS 17514335 COMPLETED 13539 reason
2026-01-22T02:31:20.075 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: update_OCS 17514335 COMPLETED 13539 reason
2026-01-22T02:31:20.075 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering guide_off
2026-01-22T02:31:20.075 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: guide_off
2026-01-22T02:31:20.075 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing guide off
2026-01-22T02:31:20.075 [INFO] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off to host 127.0.0.1 on port 12360
2026-01-22T02:31:20.075 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Creating socket to 127.0.0.1
2026-01-22T02:31:20.075 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Connected to 127.0.0.1 on port 12360
2026-01-22T02:31:21.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:31:23.077 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sending command Guide_off
2026-01-22T02:31:23.077 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Sent command Guide_off
2026-01-22T02:31:25.079 [DEBUG] [Execution thread] [instrument.py] [send_guide_command()] Closed socket
2026-01-22T02:31:25.079 [INFO] [Execution thread] [schedule_poller.py] [do_guide_off()] Guider switched off
2026-01-22T02:31:25.079 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering tracking_off
2026-01-22T02:31:25.079 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: tracking_off
2026-01-22T02:31:25.079 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing tracking off
2026-01-22T02:31:25.081 [INFO] [Execution thread] [schedule_poller.py] [do_tracking_off()] Telescope tracking switched off
2026-01-22T02:31:25.081 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering # end_time 2026-01-22T00:34:38Z
2026-01-22T02:31:25.081 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Considering run_script arc_flat_lamp_off.json
2026-01-22T02:31:25.081 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Schedule got command: run_script arc_flat_lamp_off.json
2026-01-22T02:31:25.081 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Verifying script name arc_flat_lamp_off.json
2026-01-22T02:31:25.081 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Scheduler: Doing script arc_flat_lamp_off.json
2026-01-22T02:31:25.081 [INFO] [Execution thread] [schedule_poller.py] [load_script()] Loaded script: {'script_name': 'arc_flat_lamp_off.json', 'script_units': [{'comment': 'Reset optomechanics arc and flat lamps', 'unit_number': 1, 'instrument': {'arc_mirror': 'OUT', 'arc_lamp': 'OFF', 'flat_lamp': 'OFF'}, 'do_exposure': False}]}
2026-01-22T02:31:25.082 [INFO] [Execution thread] [script_runner.py] [run_script()] Returning from run_script, having started the script
2026-01-22T02:31:25.082 [INFO] [Execution thread] [schedule_poller.py] [do_script()] Run script started
2026-01-22T02:31:25.582 [DEBUG] [script_worker] [script_runner.py] [script_worker()] Created script state
2026-01-22T02:31:25.582 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running script arc_flat_lamp_off.json 1 times
2026-01-22T02:31:25.582 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Running unit number 1 of 1: 1
2026-01-22T02:31:25.582 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No telescope section to stage
2026-01-22T02:31:25.582 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Staging instrument
2026-01-22T02:31:25.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not doing flats
2026-01-22T02:31:25.582 [DEBUG] [script_worker] [script_runner.py] [run_script_iterations()] Not a non-sidereal object OR not a science exposure (e.g wcs), non-sidereal tracking set to False
2026-01-22T02:31:25.582 [DEBUG] [script_worker] [instrument.py] [stage_script()] Setting SAVE IMAGE to true
2026-01-22T02:31:25.583 [INFO] [script_worker] [instrument.py] [stage_script()] Target acquisition section absent from script. Will not acquire target
2026-01-22T02:31:25.584 [DEBUG] [script_worker] [instrument.py] [stage_script()] Using Targ RA = 12:08:09.36456   Targ dec = +11:31:09.0732
2026-01-22T02:31:25.584 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding target FITS info
2026-01-22T02:31:25.584 [DEBUG] [script_worker] [instrument.py] [set_observation_fits_info()] Adding observer, object_name and obs type FITS info
2026-01-22T02:31:25.584 [INFO] [script_worker] [instrument.py] [stage_script()] Staging optomechanics
2026-01-22T02:31:25.590 [INFO] [script_worker] [instrument.py] [stage_script()] Staging camera
2026-01-22T02:31:25.590 [DEBUG] [script_worker] [instrument.py] [stage_script()] Staging filters
2026-01-22T02:31:25.590 [DEBUG] [script_worker] [instrument.py] [stage_script()] Valid image type 1 specified
2026-01-22T02:31:25.590 [DEBUG] [script_worker] [instrument.py] [set_image_type()] Setting image type id to 1
2026-01-22T02:31:26.634 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Instrument is ready
2026-01-22T02:31:28.636 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] No exposure required for this unit
2026-01-22T02:31:28.636 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Completed iteration 1 of 1
2026-01-22T02:31:28.636 [INFO] [script_worker] [script_runner.py] [run_script_iterations()] Done with all script iterations
2026-01-22T02:31:29.086 [INFO] [Execution thread] [schedule_poller.py] [do_script()] All script iterations done
2026-01-22T02:31:29.086 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] Script arc_flat_lamp_off.json was run successfully
2026-01-22T02:31:29.086 [INFO] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] All commands processed
2026-01-22T02:31:29.086 [DEBUG] [Execution thread] [schedule_poller.py] [run_schedule_configuration()] status for OCS = COMPLETED
2026-01-22T02:31:29.086 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS status with status [completed]
2026-01-22T02:31:29.086 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Using config status id = 17514335
2026-01-22T02:31:29.086 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Reason = Completed
2026-01-22T02:31:29.086 [DEBUG] [Execution thread] [schedule_poller.py] [updateOCS()] Updating OCS with COMPLETED
2026-01-22T02:31:29.086 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] Sending patch {'state': 'COMPLETED', 'summary': {'start': '2026-01-22T00:24:19', 'end': '2026-01-22T00:31:29', 'state': 'COMPLETED', 'reason': 'Completed', 'time_completed': '430.0', 'events': {}}} with config status ID 17514335
2026-01-22T02:31:29.279 [DEBUG] [Execution thread] [update_OCS.py] [run_patcher()] 

STATUS CODE: 200 
 REASON: OK 
 Bravo!! The PATCH WAS SUCCESSFUL!
2026-01-22T02:31:29.279 [DEBUG] [Execution thread] [schedule_poller.py] [execute()] Finished executing ['select Mookodi', 'guide_off', 'start_time 2026-01-22T00:23:24Z', 'guide_off', 'config_id 13539', 'config_status_id 17514335', 'update_OCS 17514335 ATTEMPTED', 'run_script setup_std_star_Feige56_17235582_13493_13539.json', 'run_script std_star_Feige56_17235582_13493_13539.json', 'run_script arc_flat_lamp_off.json', 'update_OCS 17514335 COMPLETED 13539 reason', 'guide_off', 'tracking_off', '# end_time 2026-01-22T00:34:38Z', 'run_script arc_flat_lamp_off.json'] at time 02:31:29
2026-01-22T02:31:31.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:31:41.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:31:51.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:32:01.050 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:32:11.060 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:32:11.077 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:31:35.223191
2026-01-22T02:32:11.077 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:31:35.223191
2026-01-22T02:32:11.077 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:32:11.077 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:32:11.077 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:32:11.077 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:32:11&start_after=2026-01-21T00:32:11&end_after=2026-01-22T00:32:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:32:11.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:32:11.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:32:11.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:32:11.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:32:11.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:32:11.192 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:32:11.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:32:11.194 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:32:11.194 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:32:11.194 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:32:11.194 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:32:11.194 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65554.805525
2026-01-22T02:32:11.194 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:32:11.194 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:32:11.194 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:32:11.195 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 2
2026-01-22T02:32:20.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:32:30.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:32:40.225 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:32:50.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:33:00.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:33:10.256 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:33:10.257 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:32:35.429302
2026-01-22T02:33:10.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:32:35.429302
2026-01-22T02:33:10.257 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:33:10.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:33:10.257 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:33:10.257 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:33:10&start_after=2026-01-21T00:33:10&end_after=2026-01-22T00:33:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:33:10.360 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:33:10.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:33:10.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:33:10.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:33:10.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:33:10.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:33:10.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:33:10.368 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:33:10.368 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:33:10.368 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:33:10.368 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:33:10.368 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65495.631782
2026-01-22T02:33:10.368 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:33:10.368 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:33:10.368 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:33:10.369 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 3
2026-01-22T02:33:19.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:33:29.390 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:33:39.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:33:49.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:33:59.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:34:09.431 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:34:09.452 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:33:35.642419
2026-01-22T02:34:09.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:33:35.642419
2026-01-22T02:34:09.452 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:34:09.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:34:09.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:34:09.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:34:09&start_after=2026-01-21T00:34:09&end_after=2026-01-22T00:34:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:34:09.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:34:09.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:34:09.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:34:09.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:34:09.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:34:09.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:34:09.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:34:09.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:34:09.579 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:34:09.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:34:09.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:34:09.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65436.420459
2026-01-22T02:34:09.579 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:34:09.579 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:34:09.579 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:34:09.580 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:34:09.580 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:34:18.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:34:28.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:34:38.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:34:48.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:34:58.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:35:08.642 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:35:08.643 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:34:35.838708
2026-01-22T02:35:08.643 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:34:35.838708
2026-01-22T02:35:08.643 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:35:08.643 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:35:08.643 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:35:08.643 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:35:08&start_after=2026-01-21T00:35:08&end_after=2026-01-22T00:35:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:35:08.752 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:35:08.754 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:35:08.755 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:35:08.756 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:35:08.757 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:35:08.758 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:35:08.760 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:35:08.760 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:35:08.760 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:35:08.760 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:35:08.760 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:35:08.760 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65377.23905
2026-01-22T02:35:08.760 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:35:08.761 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:35:08.761 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:35:08.761 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:35:08.761 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:35:17.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:35:27.781 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:35:37.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:35:47.802 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:35:57.812 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:36:07.822 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:36:07.823 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:35:36.039226
2026-01-22T02:36:07.823 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:35:36.039226
2026-01-22T02:36:07.823 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:36:07.823 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:36:07.824 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:36:07.824 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:36:07&start_after=2026-01-21T00:36:07&end_after=2026-01-22T00:36:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:36:07.941 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:36:07.942 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:36:07.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:36:07.944 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:36:07.946 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:36:07.946 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:36:07.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:36:07.949 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:36:07.949 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:36:07.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:36:07.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:36:07.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65318.050777
2026-01-22T02:36:07.949 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:36:07.949 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:36:07.949 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:36:07.970 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:36:07.970 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:36:16.979 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:36:26.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:36:37.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:36:47.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:36:57.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:37:07.031 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:37:07.050 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:36:36.238750
2026-01-22T02:37:07.050 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:36:36.238750
2026-01-22T02:37:07.050 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:37:07.050 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:37:07.050 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:37:07.050 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:37:07&start_after=2026-01-21T00:37:07&end_after=2026-01-22T00:37:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:37:07.170 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:37:07.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:37:07.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:37:07.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:37:07.176 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:37:07.176 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:37:07.178 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:37:07.179 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:37:07.179 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:37:07.179 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:37:07.179 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:37:07.179 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65258.820724
2026-01-22T02:37:07.179 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:37:07.179 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:37:07.179 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:37:07.180 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:37:07.180 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:37:16.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:37:26.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:37:36.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:37:46.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:37:56.229 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:38:06.240 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:38:06.241 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:37:36.438488
2026-01-22T02:38:06.241 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:37:36.438488
2026-01-22T02:38:06.241 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:38:06.241 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:38:06.241 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:38:06.241 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:38:06&start_after=2026-01-21T00:38:06&end_after=2026-01-22T00:38:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:38:06.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:38:06.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:38:06.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:38:06.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:38:06.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:38:06.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:38:06.356 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:38:06.357 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:38:06.357 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:38:06.357 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:38:06.357 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:38:06.357 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65199.642663
2026-01-22T02:38:06.357 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:38:06.357 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:38:06.357 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:38:06.358 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:38:06.358 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:38:15.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:38:25.378 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:38:35.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:38:45.399 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:38:55.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:39:05.419 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:39:05.438 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:38:36.634382
2026-01-22T02:39:05.438 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:38:36.634382
2026-01-22T02:39:05.438 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:39:05.438 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:39:05.439 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:39:05.439 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:39:05&start_after=2026-01-21T00:39:05&end_after=2026-01-22T00:39:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:39:05.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:39:05.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:39:05.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:39:05.559 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:39:05.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:39:05.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:39:05.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:39:05.564 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:39:05.564 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:39:05.564 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:39:05.564 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:39:05.564 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65140.435503
2026-01-22T02:39:05.564 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:39:05.564 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:39:05.564 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:39:05.565 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:39:05.565 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:39:14.574 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:39:24.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:39:34.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:39:44.606 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:39:54.616 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:40:04.626 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:40:04.627 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:39:36.837486
2026-01-22T02:40:04.627 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:39:36.837486
2026-01-22T02:40:04.627 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:40:04.627 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:40:04.627 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:40:04.627 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:40:04&start_after=2026-01-21T00:40:04&end_after=2026-01-22T00:40:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:40:04.758 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:40:04.759 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:40:04.760 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:40:04.761 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:40:04.762 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:40:04.763 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:40:04.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:40:04.765 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:40:04.766 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:40:04.766 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:40:04.766 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:40:04.766 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65081.233891
2026-01-22T02:40:04.766 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:40:04.766 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:40:04.766 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:40:04.766 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:40:04.766 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:40:13.776 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:40:23.786 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:40:33.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:40:43.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:40:53.816 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:41:03.826 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:41:03.844 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:40:37.038274
2026-01-22T02:41:03.844 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:40:37.038274
2026-01-22T02:41:03.844 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:41:03.844 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:41:03.844 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:41:03.844 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:41:03&start_after=2026-01-21T00:41:03&end_after=2026-01-22T00:41:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:41:03.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:41:03.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:41:03.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:41:03.953 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:41:03.954 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:41:03.955 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:41:03.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:41:03.957 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:41:03.957 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:41:03.957 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:41:03.957 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:41:03.958 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 65022.041966
2026-01-22T02:41:03.958 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:41:03.958 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:41:03.958 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:41:03.958 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:41:03.959 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:41:12.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:41:22.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:41:33.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:41:43.015 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:41:53.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:42:03.041 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:42:03.061 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:41:37.240067
2026-01-22T02:42:03.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:41:37.240067
2026-01-22T02:42:03.062 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:42:03.062 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:42:03.063 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:42:03.063 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:42:03&start_after=2026-01-21T00:42:03&end_after=2026-01-22T00:42:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:42:03.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:42:03.178 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:42:03.180 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:42:03.184 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:42:03.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:42:03.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:42:03.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:42:03.196 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:42:03.196 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:42:03.196 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:42:03.197 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:42:03.197 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64962.802805
2026-01-22T02:42:03.197 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:42:03.197 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:42:03.197 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:42:03.198 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:42:03.199 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:42:12.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:42:22.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:42:32.229 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:42:42.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:42:52.250 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:43:02.260 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:43:02.280 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:42:37.439739
2026-01-22T02:43:02.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:42:37.439739
2026-01-22T02:43:02.280 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:43:02.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:43:02.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:43:02.280 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:43:02&start_after=2026-01-21T00:43:02&end_after=2026-01-22T00:43:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:43:02.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:43:02.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:43:02.392 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:43:02.394 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:43:02.395 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:43:02.396 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:43:02.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:43:02.398 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:43:02.398 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:43:02.398 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:43:02.398 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:43:02.398 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64903.601075
2026-01-22T02:43:02.398 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:43:02.398 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:43:02.399 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:43:02.399 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:43:02.400 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:43:11.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:43:21.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:43:31.430 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:43:41.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:43:51.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:44:01.461 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:44:01.462 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:43:37.644823
2026-01-22T02:44:01.462 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:43:37.644823
2026-01-22T02:44:01.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:44:01.462 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:44:01.463 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:44:01.463 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:44:01&start_after=2026-01-21T00:44:01&end_after=2026-01-22T00:44:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:44:01.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:44:01.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:44:01.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:44:01.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:44:01.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:44:01.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:44:01.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:44:01.582 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:44:01.582 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:44:01.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:44:01.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:44:01.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64844.417761
2026-01-22T02:44:01.582 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:44:01.582 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:44:01.582 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:44:01.583 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:44:01.583 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:44:10.592 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:44:20.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:44:30.612 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:44:40.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:44:50.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:45:00.644 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:45:00.665 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:44:37.844985
2026-01-22T02:45:00.665 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:44:37.844985
2026-01-22T02:45:00.665 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:45:00.665 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:45:00.665 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:45:00.665 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:45:00&start_after=2026-01-21T00:45:00&end_after=2026-01-22T00:45:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:45:00.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:00.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:00.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:00.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:00.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:45:00.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:00.776 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:45:00.776 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:45:00.777 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:45:00.777 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:45:00.777 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:45:00.777 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64785.222803
2026-01-22T02:45:00.777 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:45:00.777 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:45:00.777 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:45:00.778 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:45:00.778 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:45:09.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:45:19.798 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:45:29.808 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:45:39.818 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:45:49.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:45:59.839 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:45:59.840 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:45:38.044044
2026-01-22T02:45:59.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:45:38.044044
2026-01-22T02:45:59.840 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:45:59.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:45:59.840 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:45:59.840 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:45:59&start_after=2026-01-21T00:45:59&end_after=2026-01-22T00:45:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:45:59.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:59.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:59.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:59.947 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:59.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:45:59.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:45:59.950 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:45:59.951 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:45:59.951 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:45:59.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:45:59.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:45:59.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64726.04836
2026-01-22T02:45:59.951 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:45:59.951 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:45:59.951 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:45:59.952 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:45:59.952 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:46:08.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:46:18.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:46:28.982 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:46:38.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:46:49.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:46:59.014 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:46:59.030 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:46:38.244944
2026-01-22T02:46:59.030 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:46:38.244944
2026-01-22T02:46:59.030 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:46:59.030 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:46:59.031 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:46:59.031 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:46:59&start_after=2026-01-21T00:46:59&end_after=2026-01-22T00:46:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:46:59.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:46:59.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:46:59.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:46:59.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:46:59.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:46:59.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:46:59.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:46:59.152 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:46:59.152 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:46:59.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:46:59.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:46:59.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64666.847534
2026-01-22T02:46:59.152 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:46:59.152 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:46:59.152 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:46:59.153 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:46:59.153 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:47:08.162 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:47:18.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:47:28.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:47:38.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:47:48.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:47:58.213 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:47:58.228 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:47:38.446436
2026-01-22T02:47:58.228 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:47:38.446436
2026-01-22T02:47:58.228 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:47:58.228 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:47:58.228 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:47:58.228 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:47:58&start_after=2026-01-21T00:47:58&end_after=2026-01-22T00:47:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:47:58.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:47:58.337 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:47:58.338 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:47:58.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:47:58.341 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:47:58.341 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:47:58.343 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:47:58.344 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:47:58.344 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:47:58.344 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:47:58.344 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:47:58.344 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64607.655829
2026-01-22T02:47:58.344 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:47:58.344 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:47:58.344 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:47:58.345 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:47:58.345 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:48:07.354 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:48:17.364 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:48:27.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:48:37.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:48:47.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:48:57.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:48:57.407 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:48:38.646018
2026-01-22T02:48:57.407 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:48:38.646018
2026-01-22T02:48:57.408 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:48:57.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:48:57.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:48:57.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:48:57&start_after=2026-01-21T00:48:57&end_after=2026-01-22T00:48:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:48:57.543 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:48:57.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:48:57.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:48:57.546 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:48:57.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:48:57.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:48:57.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:48:57.551 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:48:57.551 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:48:57.551 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:48:57.551 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:48:57.551 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64548.448714
2026-01-22T02:48:57.551 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:48:57.551 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:48:57.551 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:48:57.552 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:48:57.552 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:49:06.561 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:49:16.572 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:49:26.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:49:36.593 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:49:46.603 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:49:56.613 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:49:56.630 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:49:38.849965
2026-01-22T02:49:56.630 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:49:38.849965
2026-01-22T02:49:56.630 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:49:56.630 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:49:56.630 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:49:56.630 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:49:56&start_after=2026-01-21T00:49:56&end_after=2026-01-22T00:49:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:49:56.736 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:49:56.737 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:49:56.738 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:49:56.739 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:49:56.741 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:49:56.741 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:49:56.743 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:49:56.743 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:49:56.744 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:49:56.744 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:49:56.744 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:49:56.744 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64489.255873
2026-01-22T02:49:56.744 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:49:56.744 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:49:56.744 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:49:56.744 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:49:56.745 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:50:05.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:50:15.764 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:50:25.775 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:50:35.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:50:45.803 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:50:55.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:50:55.820 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:50:39.054050
2026-01-22T02:50:55.821 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:50:39.054050
2026-01-22T02:50:55.821 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:50:55.821 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:50:55.822 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:50:55.822 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:50:55&start_after=2026-01-21T00:50:55&end_after=2026-01-22T00:50:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:50:55.930 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:50:55.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:50:55.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:50:55.940 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:50:55.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:50:55.947 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:50:55.952 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:50:55.955 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:50:55.955 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:50:55.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:50:55.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:50:55.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64430.044311
2026-01-22T02:50:55.955 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:50:55.955 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:50:55.955 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:50:55.957 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:50:55.957 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:51:04.970 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:51:14.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:51:25.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:51:35.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:51:45.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:51:55.035 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:51:55.054 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:51:39.256090
2026-01-22T02:51:55.054 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:51:39.256090
2026-01-22T02:51:55.054 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:51:55.054 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:51:55.054 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:51:55.054 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:51:55&start_after=2026-01-21T00:51:55&end_after=2026-01-22T00:51:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:51:55.158 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:51:55.159 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:51:55.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:51:55.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:51:55.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:51:55.163 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:51:55.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:51:55.165 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:51:55.166 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:51:55.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:51:55.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:51:55.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64370.833882
2026-01-22T02:51:55.166 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:51:55.166 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:51:55.166 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:51:55.166 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:51:55.167 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:52:04.175 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:52:14.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:52:24.195 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:52:34.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:52:44.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:52:54.224 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:52:54.240 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:52:39.458462
2026-01-22T02:52:54.240 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:52:39.458462
2026-01-22T02:52:54.240 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:52:54.240 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:52:54.240 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:52:54.240 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:52:54&start_after=2026-01-21T00:52:54&end_after=2026-01-22T00:52:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:52:54.354 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:52:54.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:52:54.356 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:52:54.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:52:54.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:52:54.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:52:54.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:52:54.362 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:52:54.362 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:52:54.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:52:54.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:52:54.362 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64311.637731
2026-01-22T02:52:54.362 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:52:54.362 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:52:54.362 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:52:54.363 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:52:54.363 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:53:03.372 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:53:13.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:53:23.393 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:53:33.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:53:43.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:53:53.423 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:53:53.440 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:53:39.661285
2026-01-22T02:53:53.440 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:53:39.661285
2026-01-22T02:53:53.440 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:53:53.441 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:53:53.441 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:53:53.441 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:53:53&start_after=2026-01-21T00:53:53&end_after=2026-01-22T00:53:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:53:53.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:53:53.546 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:53:53.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:53:53.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:53:53.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:53:53.550 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:53:53.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:53:53.552 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:53:53.552 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:53:53.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:53:53.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:53:53.553 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64252.446877
2026-01-22T02:53:53.553 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:53:53.553 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:53:53.553 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:53:53.553 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:53:53.554 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:54:02.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:54:12.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:54:22.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:54:32.592 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:54:42.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:54:52.612 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:54:52.613 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:54:39.861322
2026-01-22T02:54:52.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:54:39.861322
2026-01-22T02:54:52.613 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:54:52.613 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:54:52.613 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:54:52.613 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:54:52&start_after=2026-01-21T00:54:52&end_after=2026-01-22T00:54:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:54:52.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:54:52.720 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:54:52.721 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:54:52.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:54:52.724 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:54:52.725 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:54:52.726 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:54:52.727 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:54:52.727 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:54:52.727 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:54:52.727 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:54:52.727 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64193.272232
2026-01-22T02:54:52.727 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:54:52.727 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:54:52.727 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:54:52.728 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:54:52.728 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:55:01.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:55:11.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:55:21.759 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:55:31.769 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:55:41.778 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:55:51.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:55:51.806 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:55:40.061578
2026-01-22T02:55:51.806 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:55:40.061578
2026-01-22T02:55:51.806 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:55:51.806 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:55:51.807 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:55:51.807 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:55:51&start_after=2026-01-21T00:55:51&end_after=2026-01-22T00:55:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:55:51.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:55:51.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:55:51.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:55:51.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:55:51.937 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:55:51.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:55:51.939 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:55:51.940 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:55:51.940 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:55:51.940 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:55:51.940 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:55:51.940 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64134.059408
2026-01-22T02:55:51.940 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:55:51.940 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:55:51.940 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:55:51.941 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:55:51.941 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:56:00.950 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:56:10.960 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:56:20.970 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:56:30.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:56:40.991 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:56:51.001 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:56:51.002 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:56:40.259263
2026-01-22T02:56:51.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:56:40.259263
2026-01-22T02:56:51.002 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:56:51.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:56:51.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:56:51.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:56:51&start_after=2026-01-21T00:56:51&end_after=2026-01-22T00:56:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:56:51.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:56:51.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:56:51.121 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:56:51.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:56:51.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:56:51.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:56:51.125 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:56:51.126 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:56:51.126 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:56:51.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:56:51.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:56:51.126 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64074.873124
2026-01-22T02:56:51.126 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:56:51.126 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:56:51.126 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:56:51.127 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:56:51.127 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:57:00.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:57:10.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:57:20.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:57:30.167 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:57:40.177 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:57:50.187 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:57:50.209 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:57:40.457508
2026-01-22T02:57:50.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:57:40.457508
2026-01-22T02:57:50.210 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:57:50.210 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:57:50.210 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:57:50.210 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:57:50&start_after=2026-01-21T00:57:50&end_after=2026-01-22T00:57:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:57:50.319 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:57:50.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:57:50.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:57:50.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:57:50.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:57:50.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:57:50.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:57:50.327 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:57:50.327 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:57:50.327 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:57:50.327 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:57:50.327 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 64015.672426
2026-01-22T02:57:50.327 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:57:50.327 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:57:50.327 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:57:50.328 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:57:50.328 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:57:59.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:58:09.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:58:19.358 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:58:29.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:58:39.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:58:49.390 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:58:49.391 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:58:40.656086
2026-01-22T02:58:49.391 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:58:40.656086
2026-01-22T02:58:49.391 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:58:49.391 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:58:49.391 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:58:49.391 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:58:49&start_after=2026-01-21T00:58:49&end_after=2026-01-22T00:58:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:58:49.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:58:49.523 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:58:49.524 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:58:49.525 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:58:49.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:58:49.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:58:49.529 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:58:49.530 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:58:49.530 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:58:49.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:58:49.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:58:49.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63956.469535
2026-01-22T02:58:49.530 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:58:49.530 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:58:49.530 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:58:49.531 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:58:49.531 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:58:58.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T02:59:08.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T02:59:18.572 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T02:59:28.586 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T02:59:38.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T02:59:48.618 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T02:59:48.638 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T02:59:40.856114
2026-01-22T02:59:48.638 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T02:59:40.856114
2026-01-22T02:59:48.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T02:59:48.638 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T02:59:48.639 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T02:59:48.639 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T00:59:48&start_after=2026-01-21T00:59:48&end_after=2026-01-22T00:59:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T02:59:48.747 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:59:48.753 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:59:48.756 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:59:48.762 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:59:48.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:59:48.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T02:59:48.778 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T02:59:48.780 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T02:59:48.780 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T02:59:48.780 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T02:59:48.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T02:59:48.781 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63897.218827
2026-01-22T02:59:48.781 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T02:59:48.781 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T02:59:48.781 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T02:59:48.782 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T02:59:48.783 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T02:59:57.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:00:07.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:00:17.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:00:27.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:00:37.836 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:00:47.846 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:00:47.847 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:00:41.065383
2026-01-22T03:00:47.847 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:00:41.065383
2026-01-22T03:00:47.847 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:00:47.847 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:00:47.847 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:00:47.847 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:00:47&start_after=2026-01-21T01:00:47&end_after=2026-01-22T01:00:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:00:47.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:00:47.953 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:00:47.953 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:00:47.955 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:00:47.956 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:00:47.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:00:47.958 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:00:47.959 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:00:47.959 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:00:47.959 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:00:47.959 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:00:47.959 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63838.040287
2026-01-22T03:00:47.959 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:00:47.959 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:00:47.959 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:00:47.960 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:00:47.960 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:00:56.970 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:01:06.980 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:01:16.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:01:27.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:01:37.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:01:47.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:01:47.036 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:01:41.265364
2026-01-22T03:01:47.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:01:41.265364
2026-01-22T03:01:47.036 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:01:47.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:01:47.036 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:01:47.036 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:01:47&start_after=2026-01-21T01:01:47&end_after=2026-01-22T01:01:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:01:47.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:01:47.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:01:47.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:01:47.175 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:01:47.177 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:01:47.177 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:01:47.179 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:01:47.180 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:01:47.180 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:01:47.180 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:01:47.180 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:01:47.180 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63778.819677
2026-01-22T03:01:47.180 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:01:47.180 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:01:47.180 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:01:47.181 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:01:47.181 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:01:56.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:02:06.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:02:16.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:02:26.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:02:36.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:02:46.241 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:02:46.256 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:02:41.472268
2026-01-22T03:02:46.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:02:41.472268
2026-01-22T03:02:46.257 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:02:46.257 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:02:46.257 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:02:46.257 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:02:46&start_after=2026-01-21T01:02:46&end_after=2026-01-22T01:02:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:02:46.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:02:46.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:02:46.364 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:02:46.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:02:46.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:02:46.368 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:02:46.369 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:02:46.370 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:02:46.370 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:02:46.370 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:02:46.370 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:02:46.370 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63719.62947
2026-01-22T03:02:46.370 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:02:46.370 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:02:46.370 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:02:46.371 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:02:46.371 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:02:55.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:03:05.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:03:15.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:03:25.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:03:35.422 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:03:45.432 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:03:45.452 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:03:41.679419
2026-01-22T03:03:45.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:03:41.679419
2026-01-22T03:03:45.452 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:03:45.452 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:03:45.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:03:45.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:03:45&start_after=2026-01-21T01:03:45&end_after=2026-01-22T01:03:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:03:45.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:03:45.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:03:45.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:03:45.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:03:45.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:03:45.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:03:45.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:03:45.570 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:03:45.570 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:03:45.571 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:03:45.571 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:03:45.571 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63660.428921
2026-01-22T03:03:45.571 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:03:45.571 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:03:45.571 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:03:45.571 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:03:45.571 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:03:54.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:04:04.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:04:14.601 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:04:24.612 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:04:34.622 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:04:44.633 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:04:44.653 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:04:41.877274
2026-01-22T03:04:44.653 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:04:41.877274
2026-01-22T03:04:44.653 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:04:44.653 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:04:44.653 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:04:44.653 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:04:44&start_after=2026-01-21T01:04:44&end_after=2026-01-22T01:04:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:04:44.759 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:04:44.760 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:04:44.761 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:04:44.762 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:04:44.764 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:04:44.765 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:04:44.766 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:04:44.767 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:04:44.767 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:04:44.767 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:04:44.767 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:04:44.767 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63601.232517
2026-01-22T03:04:44.767 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:04:44.767 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:04:44.767 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:04:44.768 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:04:44.768 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:04:53.777 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:05:03.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:05:13.798 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:05:23.808 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:05:33.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:05:43.829 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:05:43.851 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:05:42.078270
2026-01-22T03:05:43.851 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:05:42.078270
2026-01-22T03:05:43.851 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:05:43.852 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:05:43.852 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:05:43.852 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:05:43&start_after=2026-01-21T01:05:43&end_after=2026-01-22T01:05:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:05:43.959 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:05:43.960 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:05:43.961 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:05:43.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:05:43.964 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:05:43.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:05:43.966 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:05:43.967 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:05:43.967 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:05:43.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:05:43.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:05:43.967 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63542.032406
2026-01-22T03:05:43.967 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:05:43.967 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:05:43.967 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:05:43.968 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:05:43.968 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:05:52.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:06:02.987 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:06:13.001 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:06:23.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:06:33.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:06:43.041 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:06:43.044 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:06:42.281840
2026-01-22T03:06:43.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:06:42.281840
2026-01-22T03:06:43.044 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:06:43.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:06:43.045 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:06:43.045 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:06:43&start_after=2026-01-21T01:06:43&end_after=2026-01-22T01:06:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:06:43.161 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:06:43.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:06:43.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:06:43.178 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:06:43.185 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:06:43.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:06:43.193 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:06:43.195 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:06:43.195 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:06:43.195 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:06:43.195 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:06:43.195 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63482.804445
2026-01-22T03:06:43.195 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:06:43.195 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:06:43.195 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:06:43.197 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:06:43.197 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:06:52.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:07:02.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:07:12.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:07:22.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:07:32.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:07:42.265 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:07:42.266 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:06:42.281840
2026-01-22T03:07:42.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:06:42.281840
2026-01-22T03:07:42.266 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:07:42.266 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:07:42.266 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:07:42.266 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:07:42&start_after=2026-01-21T01:07:42&end_after=2026-01-22T01:07:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:07:42.376 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:07:42.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:07:42.378 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:07:42.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:07:42.381 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:07:42.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:07:42.383 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:07:42.384 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:07:42.384 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:07:42.384 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:07:42.384 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:07:42.384 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63423.615272
2026-01-22T03:07:42.384 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:07:42.384 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:07:42.384 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:07:42.385 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:07:42.385 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:07:51.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:08:01.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:08:11.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:08:21.423 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:08:31.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:08:41.442 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:08:41.466 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:07:42.479540
2026-01-22T03:08:41.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:07:42.479540
2026-01-22T03:08:41.466 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:08:41.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:08:41.466 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:08:41.466 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:08:41&start_after=2026-01-21T01:08:41&end_after=2026-01-22T01:08:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:08:41.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:08:41.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:08:41.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:08:41.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:08:41.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:08:41.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:08:41.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:08:41.609 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:08:41.609 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:08:41.609 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:08:41.609 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:08:41.610 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63364.389988
2026-01-22T03:08:41.610 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:08:41.610 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:08:41.610 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:08:41.611 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:08:41.612 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:08:50.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:09:00.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:09:10.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:09:20.651 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:09:30.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:09:40.673 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:09:40.673 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:08:42.682517
2026-01-22T03:09:40.673 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:08:42.682517
2026-01-22T03:09:40.674 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:09:40.674 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:09:40.674 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:09:40.674 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:09:40&start_after=2026-01-21T01:09:40&end_after=2026-01-22T01:09:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:09:40.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:09:40.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:09:40.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:09:40.811 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:09:40.813 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:09:40.814 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:09:40.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:09:40.816 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:09:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:09:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:09:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:09:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63305.183451
2026-01-22T03:09:40.816 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:09:40.816 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:09:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:09:40.817 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:09:40.817 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:09:49.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:09:59.837 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:10:09.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:10:19.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:10:29.868 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:10:39.879 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:10:39.895 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:09:42.880323
2026-01-22T03:10:39.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:09:42.880323
2026-01-22T03:10:39.895 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:10:39.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:10:39.895 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:10:39.895 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:10:39&start_after=2026-01-21T01:10:39&end_after=2026-01-22T01:10:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:10:39.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:10:40.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:10:40.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:10:40.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:10:40.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:10:40.005 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:10:40.007 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:10:40.007 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:10:40.007 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:10:40.007 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:10:40.007 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:10:40.008 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63245.991981
2026-01-22T03:10:40.008 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:10:40.008 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:10:40.008 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:10:40.008 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:10:40.008 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:10:49.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:10:59.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:11:09.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:11:19.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:11:29.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:11:39.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:11:39.069 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:10:43.079722
2026-01-22T03:11:39.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:10:43.079722
2026-01-22T03:11:39.069 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:11:39.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:11:39.069 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:11:39.069 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:11:39&start_after=2026-01-21T01:11:39&end_after=2026-01-22T01:11:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:11:39.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:11:39.175 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:11:39.176 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:11:39.177 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:11:39.178 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:11:39.179 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:11:39.181 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:11:39.181 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:11:39.181 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:11:39.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:11:39.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:11:39.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63186.818032
2026-01-22T03:11:39.182 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:11:39.182 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:11:39.182 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:11:39.182 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:11:39.182 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:11:48.192 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:11:58.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:12:08.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:12:18.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:12:28.238 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:12:38.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:12:38.271 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:11:43.280116
2026-01-22T03:12:38.271 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:11:43.280116
2026-01-22T03:12:38.271 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:12:38.271 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:12:38.271 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:12:38.271 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:12:38&start_after=2026-01-21T01:12:38&end_after=2026-01-22T01:12:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:12:38.380 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:12:38.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:12:38.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:12:38.384 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:12:38.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:12:38.386 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:12:38.387 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:12:38.388 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:12:38.388 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:12:38.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:12:38.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:12:38.388 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63127.611432
2026-01-22T03:12:38.388 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:12:38.388 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:12:38.388 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:12:38.389 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:12:38.389 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:12:47.402 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:12:57.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:13:07.431 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:13:17.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:13:27.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:13:37.466 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:13:37.467 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:12:43.481291
2026-01-22T03:13:37.467 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:12:43.481291
2026-01-22T03:13:37.467 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:13:37.467 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:13:37.467 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:13:37.467 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:13:37&start_after=2026-01-21T01:13:37&end_after=2026-01-22T01:13:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:13:37.572 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:13:37.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:13:37.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:13:37.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:13:37.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:13:37.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:13:37.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:13:37.580 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:13:37.580 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:13:37.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:13:37.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:13:37.580 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63068.419193
2026-01-22T03:13:37.580 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:13:37.580 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:13:37.580 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:13:37.581 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:13:37.581 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:13:46.590 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:13:56.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:14:06.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:14:16.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:14:26.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:14:36.642 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:14:36.663 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:13:43.679722
2026-01-22T03:14:36.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:13:43.679722
2026-01-22T03:14:36.663 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:14:36.663 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:14:36.664 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:14:36.664 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:14:36&start_after=2026-01-21T01:14:36&end_after=2026-01-22T01:14:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:14:36.767 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:14:36.768 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:14:36.769 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:14:36.770 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:14:36.771 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:14:36.772 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:14:36.774 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:14:36.774 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:14:36.775 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:14:36.775 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:14:36.775 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:14:36.775 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 63009.224884
2026-01-22T03:14:36.775 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:14:36.775 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:14:36.775 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:14:36.776 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:14:36.776 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:14:45.785 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:14:55.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:15:05.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:15:15.816 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:15:25.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:15:35.836 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:15:35.837 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:14:43.877344
2026-01-22T03:15:35.837 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:14:43.877344
2026-01-22T03:15:35.837 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:15:35.837 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:15:35.837 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:15:35.838 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:15:35&start_after=2026-01-21T01:15:35&end_after=2026-01-22T01:15:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:15:35.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:15:35.944 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:15:35.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:15:35.946 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:15:35.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:15:35.949 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:15:35.950 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:15:35.951 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:15:35.951 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:15:35.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:15:35.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:15:35.951 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62950.048506
2026-01-22T03:15:35.951 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:15:35.951 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:15:35.951 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:15:35.952 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:15:35.952 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:15:44.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:15:54.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:16:04.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:16:14.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:16:25.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:16:35.012 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:16:35.028 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:15:44.079456
2026-01-22T03:16:35.028 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:15:44.079456
2026-01-22T03:16:35.028 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:16:35.028 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:16:35.028 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:16:35.029 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:16:35&start_after=2026-01-21T01:16:35&end_after=2026-01-22T01:16:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:16:35.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:16:35.130 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:16:35.130 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:16:35.132 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:16:35.133 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:16:35.134 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:16:35.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:16:35.136 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:16:35.136 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:16:35.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:16:35.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:16:35.136 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62890.86326
2026-01-22T03:16:35.136 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:16:35.136 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:16:35.136 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:16:35.137 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:16:35.137 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:16:44.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:16:54.156 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:17:04.166 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:17:14.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:17:24.187 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:17:34.197 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:17:34.214 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:16:44.279778
2026-01-22T03:17:34.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:16:44.279778
2026-01-22T03:17:34.214 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:17:34.214 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:17:34.215 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:17:34.215 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:17:34&start_after=2026-01-21T01:17:34&end_after=2026-01-22T01:17:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:17:34.360 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:17:34.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:17:34.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:17:34.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:17:34.365 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:17:34.370 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:17:34.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:17:34.373 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:17:34.373 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:17:34.373 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:17:34.373 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:17:34.373 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62831.626554
2026-01-22T03:17:34.373 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:17:34.373 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:17:34.373 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:17:34.374 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:17:34.374 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:17:43.383 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:17:53.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:18:03.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:18:13.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:18:23.435 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:18:33.448 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:18:33.450 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:17:44.486850
2026-01-22T03:18:33.451 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:17:44.486850
2026-01-22T03:18:33.451 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:18:33.451 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:18:33.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:18:33.452 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:18:33&start_after=2026-01-21T01:18:33&end_after=2026-01-22T01:18:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:18:33.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:18:33.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:18:33.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:18:33.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:18:33.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:18:33.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:18:33.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:18:33.588 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:18:33.588 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:18:33.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:18:33.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:18:33.588 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62772.411288
2026-01-22T03:18:33.588 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:18:33.588 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:18:33.589 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:18:33.610 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:18:33.610 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:18:42.623 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:18:52.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:19:02.653 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:19:12.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:19:22.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:19:32.684 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:19:32.704 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:18:44.687990
2026-01-22T03:19:32.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:18:44.687990
2026-01-22T03:19:32.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:19:32.704 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:19:32.705 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:19:32.705 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:19:32&start_after=2026-01-21T01:19:32&end_after=2026-01-22T01:19:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:19:32.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:19:32.812 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:19:32.812 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:19:32.814 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:19:32.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:19:32.816 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:19:32.817 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:19:32.818 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:19:32.818 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:19:32.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:19:32.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:19:32.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62713.181307
2026-01-22T03:19:32.818 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:19:32.818 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:19:32.818 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:19:32.819 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:19:32.819 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:19:41.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:19:51.839 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:20:01.849 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:20:11.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:20:21.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:20:31.878 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:20:31.879 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:19:44.887874
2026-01-22T03:20:31.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:19:44.887874
2026-01-22T03:20:31.879 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:20:31.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:20:31.879 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:20:31.879 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:20:31&start_after=2026-01-21T01:20:31&end_after=2026-01-22T01:20:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:20:31.987 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:20:31.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:20:31.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:20:31.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:20:31.992 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:20:31.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:20:31.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:20:31.995 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:20:31.996 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:20:31.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:20:31.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:20:31.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62654.003864
2026-01-22T03:20:31.996 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:20:31.996 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:20:31.996 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:20:31.997 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:20:31.997 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:20:41.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:20:51.015 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:21:01.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:21:11.035 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:21:21.046 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:21:31.055 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:21:31.074 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:20:45.088488
2026-01-22T03:21:31.074 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:20:45.088488
2026-01-22T03:21:31.074 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:21:31.074 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:21:31.075 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:21:31.075 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:21:31&start_after=2026-01-21T01:21:31&end_after=2026-01-22T01:21:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:21:31.183 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:21:31.185 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:21:31.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:21:31.187 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:21:31.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:21:31.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:21:31.190 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:21:31.191 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:21:31.191 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:21:31.191 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:21:31.191 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:21:31.191 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62594.808088
2026-01-22T03:21:31.191 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:21:31.191 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:21:31.191 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:21:31.192 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:21:31.192 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:21:40.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:21:50.210 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:22:00.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:22:10.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:22:20.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:22:30.250 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:22:30.251 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:21:45.286598
2026-01-22T03:22:30.251 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:21:45.286598
2026-01-22T03:22:30.251 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:22:30.251 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:22:30.251 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:22:30.251 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:22:30&start_after=2026-01-21T01:22:30&end_after=2026-01-22T01:22:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:22:30.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:22:30.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:22:30.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:22:30.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:22:30.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:22:30.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:22:30.364 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:22:30.365 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:22:30.365 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:22:30.365 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:22:30.365 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:22:30.365 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62535.634203
2026-01-22T03:22:30.365 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:22:30.365 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:22:30.365 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:22:30.366 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:22:30.366 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:22:39.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:22:49.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:22:59.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:23:09.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:23:19.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:23:29.425 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:23:29.445 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:22:45.485673
2026-01-22T03:23:29.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:22:45.485673
2026-01-22T03:23:29.445 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:23:29.445 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:23:29.445 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:23:29.445 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:23:29&start_after=2026-01-21T01:23:29&end_after=2026-01-22T01:23:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:23:29.561 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:23:29.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:23:29.563 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:23:29.564 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:23:29.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:23:29.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:23:29.568 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:23:29.569 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:23:29.569 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:23:29.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:23:29.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:23:29.569 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62476.430447
2026-01-22T03:23:29.569 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:23:29.569 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:23:29.569 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:23:29.570 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:23:29.570 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:23:38.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:23:48.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:23:58.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:24:08.630 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:24:18.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:24:28.661 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:24:28.664 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:23:45.687481
2026-01-22T03:24:28.664 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:23:45.687481
2026-01-22T03:24:28.665 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:24:28.665 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:24:28.666 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:24:28.666 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:24:28&start_after=2026-01-21T01:24:28&end_after=2026-01-22T01:24:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:24:28.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:24:28.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:24:28.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:24:28.801 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:24:28.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:24:28.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:24:28.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:24:28.817 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:24:28.818 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:24:28.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:24:28.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:24:28.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62417.181622
2026-01-22T03:24:28.818 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:24:28.818 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:24:28.818 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:24:28.819 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:24:28.820 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:24:37.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:24:47.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:24:57.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:25:07.864 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:25:17.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:25:27.885 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:25:27.903 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:24:45.888170
2026-01-22T03:25:27.903 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:24:45.888170
2026-01-22T03:25:27.903 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:25:27.903 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:25:27.903 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:25:27.903 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:25:27&start_after=2026-01-21T01:25:27&end_after=2026-01-22T01:25:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:25:28.010 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:25:28.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:25:28.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:25:28.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:25:28.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:25:28.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:25:28.018 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:25:28.018 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:25:28.018 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:25:28.018 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:25:28.018 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:25:28.018 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62357.981069
2026-01-22T03:25:28.018 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:25:28.018 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:25:28.019 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:25:28.019 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:25:28.019 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:25:37.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:25:47.038 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:25:57.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:26:07.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:26:17.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:26:27.078 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:26:27.078 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:25:46.086953
2026-01-22T03:26:27.078 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:25:46.086953
2026-01-22T03:26:27.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:26:27.079 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:26:27.079 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:26:27.079 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:26:27&start_after=2026-01-21T01:26:27&end_after=2026-01-22T01:26:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:26:27.194 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:26:27.196 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:26:27.197 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:26:27.198 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:26:27.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:26:27.200 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:26:27.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:26:27.203 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:26:27.203 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:26:27.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:26:27.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:26:27.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62298.796789
2026-01-22T03:26:27.203 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:26:27.203 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:26:27.203 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:26:27.204 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:26:27.204 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:26:36.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:26:46.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:26:56.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:27:06.243 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:27:16.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:27:26.263 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:27:26.282 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:26:46.285923
2026-01-22T03:27:26.282 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:26:46.285923
2026-01-22T03:27:26.282 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:27:26.282 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:27:26.283 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:27:26.283 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:27:26&start_after=2026-01-21T01:27:26&end_after=2026-01-22T01:27:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:27:26.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:27:26.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:27:26.399 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:27:26.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:27:26.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:27:26.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:27:26.404 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:27:26.404 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:27:26.404 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:27:26.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:27:26.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:27:26.405 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62239.594905
2026-01-22T03:27:26.405 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:27:26.405 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:27:26.405 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:27:26.405 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:27:26.406 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:27:35.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:27:45.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:27:55.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:28:05.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:28:15.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:28:25.467 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:28:25.468 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:27:46.485281
2026-01-22T03:28:25.468 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:27:46.485281
2026-01-22T03:28:25.468 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:28:25.468 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:28:25.469 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:28:25.469 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:28:25&start_after=2026-01-21T01:28:25&end_after=2026-01-22T01:28:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:28:25.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:28:25.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:28:25.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:28:25.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:28:25.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:28:25.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:28:25.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:28:25.581 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:28:25.581 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:28:25.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:28:25.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:28:25.582 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62180.417908
2026-01-22T03:28:25.582 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:28:25.582 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:28:25.582 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:28:25.582 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:28:25.582 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:28:34.592 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:28:44.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:28:54.613 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:29:04.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:29:14.644 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:29:24.657 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:29:24.676 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:28:46.687159
2026-01-22T03:29:24.676 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:28:46.687159
2026-01-22T03:29:24.676 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:29:24.676 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:29:24.676 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:29:24.676 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:29:24&start_after=2026-01-21T01:29:24&end_after=2026-01-22T01:29:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:29:24.802 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:29:24.803 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:29:24.804 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:29:24.805 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:29:24.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:29:24.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:29:24.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:29:24.810 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:29:24.810 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:29:24.810 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:29:24.810 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:29:24.810 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62121.189583
2026-01-22T03:29:24.810 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:29:24.810 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:29:24.810 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:29:24.811 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:29:24.811 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:29:33.824 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:29:43.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:29:53.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:30:03.866 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:30:13.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:30:23.894 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:30:23.895 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:29:46.887346
2026-01-22T03:30:23.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:29:46.887346
2026-01-22T03:30:23.895 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:30:23.895 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:30:23.896 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:30:23.896 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:30:23&start_after=2026-01-21T01:30:23&end_after=2026-01-22T01:30:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:30:24.009 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:30:24.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:30:24.011 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:30:24.012 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:30:24.014 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:30:24.015 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:30:24.016 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:30:24.017 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:30:24.017 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:30:24.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:30:24.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:30:24.017 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62061.982486
2026-01-22T03:30:24.017 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:30:24.017 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:30:24.017 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:30:24.018 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:30:24.018 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:30:33.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:30:43.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:30:53.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:31:03.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:31:13.068 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:31:23.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:31:23.080 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:30:47.088580
2026-01-22T03:31:23.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:30:47.088580
2026-01-22T03:31:23.080 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:31:23.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:31:23.080 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:31:23.080 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:31:23&start_after=2026-01-21T01:31:23&end_after=2026-01-22T01:31:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:31:23.180 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:31:23.182 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:31:23.183 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:31:23.184 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:31:23.185 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:31:23.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:31:23.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:31:23.188 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:31:23.188 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:31:23.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:31:23.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:31:23.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 62002.811027
2026-01-22T03:31:23.189 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:31:23.189 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:31:23.189 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:31:23.205 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:31:23.205 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:31:32.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:31:42.225 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:31:52.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:32:02.246 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:32:12.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:32:22.264 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:32:22.280 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:31:47.289786
2026-01-22T03:32:22.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:31:47.289786
2026-01-22T03:32:22.280 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:32:22.280 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:32:22.281 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:32:22.281 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:32:22&start_after=2026-01-21T01:32:22&end_after=2026-01-22T01:32:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:32:22.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:32:22.401 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:32:22.402 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:32:22.403 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:32:22.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:32:22.405 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:32:22.407 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:32:22.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:32:22.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:32:22.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:32:22.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:32:22.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61943.59176
2026-01-22T03:32:22.408 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:32:22.408 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:32:22.408 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:32:22.409 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:32:22.409 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:32:31.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:32:41.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:32:51.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:33:01.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:33:11.458 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:33:21.469 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:33:21.470 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:32:47.492256
2026-01-22T03:33:21.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:32:47.492256
2026-01-22T03:33:21.470 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:33:21.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:33:21.470 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:33:21.470 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:33:21&start_after=2026-01-21T01:33:21&end_after=2026-01-22T01:33:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:33:21.578 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:33:21.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:33:21.580 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:33:21.581 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:33:21.583 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:33:21.584 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:33:21.585 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:33:21.586 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:33:21.586 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:33:21.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:33:21.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:33:21.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61884.41351
2026-01-22T03:33:21.586 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:33:21.586 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:33:21.586 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:33:21.607 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:33:21.607 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:33:30.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:33:40.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:33:50.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:34:00.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:34:10.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:34:20.670 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:34:20.693 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:33:47.692285
2026-01-22T03:34:20.693 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:33:47.692285
2026-01-22T03:34:20.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:34:20.693 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:34:20.694 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:34:20.694 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:34:20&start_after=2026-01-21T01:34:20&end_after=2026-01-22T01:34:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:34:20.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:34:20.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:34:20.818 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:34:20.823 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:34:20.829 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:34:20.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:34:20.838 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:34:20.840 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:34:20.840 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:34:20.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:34:20.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:34:20.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61825.159038
2026-01-22T03:34:20.841 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:34:20.841 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:34:20.841 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:34:20.842 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:34:20.842 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:34:29.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:34:39.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:34:49.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:34:59.897 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:35:09.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:35:19.925 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:35:19.926 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:34:47.907469
2026-01-22T03:35:19.926 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:34:47.907469
2026-01-22T03:35:19.926 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:35:19.926 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:35:19.926 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:35:19.926 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:35:19&start_after=2026-01-21T01:35:19&end_after=2026-01-22T01:35:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:35:20.054 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:35:20.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:35:20.056 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:35:20.058 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:35:20.059 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:35:20.104 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:35:20.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:35:20.107 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:35:20.107 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:35:20.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:35:20.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:35:20.107 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61765.892651
2026-01-22T03:35:20.107 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:35:20.107 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:35:20.107 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:35:20.108 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:35:20.108 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:35:29.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:35:39.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:35:49.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:35:59.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:36:09.156 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:36:19.166 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:36:19.181 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:35:48.110335
2026-01-22T03:36:19.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:35:48.110335
2026-01-22T03:36:19.181 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:36:19.181 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:36:19.181 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:36:19.181 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:36:19&start_after=2026-01-21T01:36:19&end_after=2026-01-22T01:36:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:36:19.287 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:36:19.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:36:19.289 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:36:19.291 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:36:19.292 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:36:19.293 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:36:19.294 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:36:19.295 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:36:19.295 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:36:19.295 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:36:19.295 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:36:19.295 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61706.704187
2026-01-22T03:36:19.295 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:36:19.295 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:36:19.295 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:36:19.296 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:36:19.296 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:36:28.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:36:38.316 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:36:48.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:36:58.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:37:08.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:37:18.358 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:37:18.359 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:36:48.308509
2026-01-22T03:37:18.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:36:48.308509
2026-01-22T03:37:18.359 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:37:18.359 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:37:18.359 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:37:18.360 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:37:18&start_after=2026-01-21T01:37:18&end_after=2026-01-22T01:37:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:37:18.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:37:18.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:37:18.574 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:37:18.575 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:37:18.576 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:37:18.577 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:37:18.579 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:37:18.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:37:18.579 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:37:18.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:37:18.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:37:18.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61647.420013
2026-01-22T03:37:18.580 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:37:18.580 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:37:18.580 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:37:18.597 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:37:18.597 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:37:27.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:37:37.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:37:47.628 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:37:57.638 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:38:07.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:38:17.658 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:38:17.681 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:37:48.507084
2026-01-22T03:38:17.681 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:37:48.507084
2026-01-22T03:38:17.681 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:38:17.681 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:38:17.681 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:38:17.681 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:38:17&start_after=2026-01-21T01:38:17&end_after=2026-01-22T01:38:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:38:17.806 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:38:17.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:38:17.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:38:17.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:38:17.811 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:38:17.811 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:38:17.813 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:38:17.814 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:38:17.814 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:38:17.814 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:38:17.814 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:38:17.814 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61588.185709
2026-01-22T03:38:17.814 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:38:17.814 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:38:17.814 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:38:17.815 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:38:17.815 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:38:26.824 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:38:36.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:38:46.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:38:56.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:39:06.865 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:39:16.875 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:39:16.876 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:38:48.707803
2026-01-22T03:39:16.876 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:38:48.707803
2026-01-22T03:39:16.876 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:39:16.876 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:39:16.877 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:39:16.877 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:39:16&start_after=2026-01-21T01:39:16&end_after=2026-01-22T01:39:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:39:16.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:39:16.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:39:16.996 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:39:16.997 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:39:16.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:39:16.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:39:17.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:39:17.002 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:39:17.002 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:39:17.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:39:17.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:39:17.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61528.99774
2026-01-22T03:39:17.002 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:39:17.002 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:39:17.002 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:39:17.003 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:39:17.003 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:39:26.012 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:39:36.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:39:46.035 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:39:56.050 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:40:06.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:40:16.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:40:16.102 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:39:48.911813
2026-01-22T03:40:16.103 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:39:48.911813
2026-01-22T03:40:16.103 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:40:16.103 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:40:16.104 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:40:16.104 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:40:16&start_after=2026-01-21T01:40:16&end_after=2026-01-22T01:40:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:40:16.223 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:40:16.227 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:40:16.228 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:40:16.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:40:16.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:40:16.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:40:16.240 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:40:16.242 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:40:16.242 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:40:16.242 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:40:16.242 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:40:16.242 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61469.757457
2026-01-22T03:40:16.242 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:40:16.242 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:40:16.242 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:40:16.244 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:40:16.244 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:40:25.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:40:35.271 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:40:45.282 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:40:55.292 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:41:05.302 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:41:15.312 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:41:15.313 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:40:49.112124
2026-01-22T03:41:15.313 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:40:49.112124
2026-01-22T03:41:15.313 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:41:15.313 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:41:15.313 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:41:15.313 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:41:15&start_after=2026-01-21T01:41:15&end_after=2026-01-22T01:41:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:41:15.481 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:41:15.483 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:41:15.484 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:41:15.485 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:41:15.486 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:41:15.492 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:41:15.494 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:41:15.494 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:41:15.494 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:41:15.494 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:41:15.494 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:41:15.495 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61410.504968
2026-01-22T03:41:15.495 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:41:15.495 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:41:15.495 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:41:15.495 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:41:15.495 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:41:24.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:41:34.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:41:44.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:41:54.535 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:42:04.546 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:42:14.556 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:42:14.578 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:41:49.310531
2026-01-22T03:42:14.578 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:41:49.310531
2026-01-22T03:42:14.578 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:42:14.578 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:42:14.578 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:42:14.578 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:42:14&start_after=2026-01-21T01:42:14&end_after=2026-01-22T01:42:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:42:14.708 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:42:14.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:42:14.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:42:14.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:42:14.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:42:14.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:42:14.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:42:14.716 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:42:14.716 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:42:14.716 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:42:14.716 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:42:14.716 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61351.283312
2026-01-22T03:42:14.716 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:42:14.716 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:42:14.716 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:42:14.717 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:42:14.717 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:42:23.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:42:33.737 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:42:43.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:42:53.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:43:03.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:43:13.779 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:43:13.798 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:42:49.510094
2026-01-22T03:43:13.798 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:42:49.510094
2026-01-22T03:43:13.798 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:43:13.798 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:43:13.798 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:43:13.798 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:43:13&start_after=2026-01-21T01:43:13&end_after=2026-01-22T01:43:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:43:13.918 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:43:13.920 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:43:13.920 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:43:13.922 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:43:13.923 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:43:13.924 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:43:13.925 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:43:13.926 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:43:13.926 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:43:13.926 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:43:13.926 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:43:13.926 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61292.07319
2026-01-22T03:43:13.926 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:43:13.926 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:43:13.926 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:43:13.927 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:43:13.927 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:43:22.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:43:32.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:43:42.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:43:52.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:44:02.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:44:12.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:44:13.009 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:43:49.710113
2026-01-22T03:44:13.010 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:43:49.710113
2026-01-22T03:44:13.010 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:44:13.010 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:44:13.010 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:44:13.010 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:44:13&start_after=2026-01-21T01:44:13&end_after=2026-01-22T01:44:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:44:13.158 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:44:13.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:44:13.160 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:44:13.162 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:44:13.163 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:44:13.164 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:44:13.165 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:44:13.166 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:44:13.166 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:44:13.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:44:13.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:44:13.166 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61232.833142
2026-01-22T03:44:13.166 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:44:13.166 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:44:13.166 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:44:13.167 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:44:13.167 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:44:22.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:44:32.186 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:44:42.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:44:52.206 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:45:02.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:45:12.234 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:45:12.236 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:44:49.909529
2026-01-22T03:45:12.237 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:44:49.909529
2026-01-22T03:45:12.237 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:45:12.237 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:45:12.238 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:45:12.238 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:45:12&start_after=2026-01-21T01:45:12&end_after=2026-01-22T01:45:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:45:12.375 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:45:12.382 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:45:12.385 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:45:12.391 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:45:12.397 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:45:12.400 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:45:12.406 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:45:12.408 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:45:12.408 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:45:12.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:45:12.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:45:12.408 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61173.591193
2026-01-22T03:45:12.408 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:45:12.408 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:45:12.409 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:45:12.410 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:45:12.410 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:45:21.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:45:31.439 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:45:41.454 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:45:51.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:46:01.482 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:46:11.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:46:11.511 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:45:50.110360
2026-01-22T03:46:11.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:45:50.110360
2026-01-22T03:46:11.511 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:46:11.511 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:46:11.511 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:46:11.511 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:46:11&start_after=2026-01-21T01:46:11&end_after=2026-01-22T01:46:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:46:11.624 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:46:11.626 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:46:11.626 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:46:11.628 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:46:11.629 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:46:11.630 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:46:11.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:46:11.632 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:46:11.632 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:46:11.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:46:11.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:46:11.632 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61114.36706
2026-01-22T03:46:11.632 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:46:11.633 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:46:11.633 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:46:11.633 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:46:11.633 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:46:20.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:46:30.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:46:40.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:46:50.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:47:00.683 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:47:10.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:47:10.694 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:46:50.309601
2026-01-22T03:47:10.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:46:50.309601
2026-01-22T03:47:10.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:47:10.694 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:47:10.694 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:47:10.694 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:47:10&start_after=2026-01-21T01:47:10&end_after=2026-01-22T01:47:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:47:10.826 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:47:10.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:47:10.828 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:47:10.830 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:47:10.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:47:10.832 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:47:10.834 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:47:10.834 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:47:10.834 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:47:10.834 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:47:10.834 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:47:10.835 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 61055.164999
2026-01-22T03:47:10.835 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:47:10.835 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:47:10.835 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:47:10.835 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:47:10.835 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:47:19.845 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:47:29.855 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:47:39.866 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:47:49.876 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:47:59.886 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:48:09.896 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:48:09.912 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:47:50.509646
2026-01-22T03:48:09.912 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:47:50.509646
2026-01-22T03:48:09.912 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:48:09.912 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:48:09.913 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:48:09.913 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:48:09&start_after=2026-01-21T01:48:09&end_after=2026-01-22T01:48:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:48:10.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:48:10.029 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:48:10.030 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:48:10.031 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:48:10.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:48:10.033 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:48:10.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:48:10.036 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:48:10.036 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:48:10.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:48:10.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:48:10.036 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60995.963565
2026-01-22T03:48:10.036 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:48:10.036 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:48:10.036 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:48:10.037 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:48:10.037 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:48:19.046 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:48:29.056 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:48:39.066 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:48:49.076 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:48:59.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:49:09.096 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:49:09.097 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:48:50.709075
2026-01-22T03:49:09.097 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:48:50.709075
2026-01-22T03:49:09.097 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:49:09.097 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:49:09.097 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:49:09.097 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:49:09&start_after=2026-01-21T01:49:09&end_after=2026-01-22T01:49:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:49:09.213 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:49:09.214 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:49:09.215 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:49:09.216 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:49:09.218 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:49:09.219 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:49:09.220 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:49:09.221 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:49:09.221 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:49:09.221 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:49:09.221 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:49:09.221 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60936.778426
2026-01-22T03:49:09.221 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:49:09.221 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:49:09.221 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:49:09.222 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:49:09.222 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:49:18.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:49:28.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:49:38.252 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:49:48.262 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:49:58.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:50:08.283 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:50:08.284 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:49:50.908237
2026-01-22T03:50:08.284 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:49:50.908237
2026-01-22T03:50:08.284 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:50:08.284 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:50:08.284 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:50:08.284 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:50:08&start_after=2026-01-21T01:50:08&end_after=2026-01-22T01:50:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:50:08.409 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:50:08.411 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:50:08.411 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:50:08.412 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:50:08.414 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:50:08.415 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:50:08.416 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:50:08.417 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:50:08.417 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:50:08.417 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:50:08.417 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:50:08.417 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60877.582365
2026-01-22T03:50:08.417 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:50:08.417 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:50:08.417 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:50:08.437 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:50:08.437 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:50:17.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:50:27.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:50:37.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:50:47.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:50:57.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:51:07.530 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:51:07.532 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:50:51.106081
2026-01-22T03:51:07.532 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:50:51.106081
2026-01-22T03:51:07.532 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:51:07.533 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:51:07.533 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:51:07.534 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:51:07&start_after=2026-01-21T01:51:07&end_after=2026-01-22T01:51:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:51:07.653 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:51:07.655 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:51:07.656 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:51:07.658 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:51:07.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:51:07.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:51:07.665 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:51:07.666 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:51:07.666 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:51:07.666 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:51:07.666 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:51:07.666 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60818.333216
2026-01-22T03:51:07.666 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:51:07.666 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:51:07.666 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:51:07.668 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:51:07.668 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:51:16.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:51:26.687 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:51:36.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:51:46.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:51:56.718 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:52:06.729 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:52:06.730 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:51:51.324246
2026-01-22T03:52:06.730 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:51:51.324246
2026-01-22T03:52:06.730 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:52:06.730 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:52:06.730 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:52:06.730 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:52:06&start_after=2026-01-21T01:52:06&end_after=2026-01-22T01:52:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:52:06.846 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:52:06.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:52:06.849 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:52:06.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:52:06.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:52:06.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:52:06.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:52:06.854 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:52:06.854 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:52:06.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:52:06.854 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:52:06.855 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60759.144971
2026-01-22T03:52:06.855 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:52:06.855 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:52:06.855 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:52:06.869 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:52:06.870 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:52:15.879 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:52:25.889 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:52:35.899 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:52:45.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:52:55.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:53:05.932 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:53:05.948 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:52:51.523204
2026-01-22T03:53:05.948 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:52:51.523204
2026-01-22T03:53:05.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:53:05.948 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:53:05.949 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:53:05.949 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:53:05&start_after=2026-01-21T01:53:05&end_after=2026-01-22T01:53:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:53:06.072 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:53:06.073 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:53:06.074 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:53:06.075 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:53:06.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:53:06.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:53:06.079 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:53:06.080 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:53:06.080 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:53:06.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:53:06.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:53:06.080 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60699.919727
2026-01-22T03:53:06.080 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:53:06.080 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:53:06.080 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:53:06.081 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:53:06.081 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:53:15.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:53:25.100 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:53:35.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:53:45.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:53:55.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:54:05.140 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:54:05.164 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:53:51.736186
2026-01-22T03:54:05.164 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:53:51.736186
2026-01-22T03:54:05.164 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:54:05.164 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:54:05.164 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:54:05.164 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:54:05&start_after=2026-01-21T01:54:05&end_after=2026-01-22T01:54:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:54:05.281 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:54:05.283 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:54:05.284 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:54:05.285 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:54:05.286 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:54:05.287 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:54:05.288 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:54:05.289 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:54:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:54:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:54:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:54:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60640.710137
2026-01-22T03:54:05.289 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:54:05.289 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:54:05.289 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:54:05.290 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:54:05.290 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:54:14.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:54:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:54:34.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:54:44.331 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:54:54.342 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:55:04.352 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:55:04.375 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:54:51.935497
2026-01-22T03:55:04.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:54:51.935497
2026-01-22T03:55:04.376 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:55:04.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:55:04.376 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:55:04.376 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:55:04&start_after=2026-01-21T01:55:04&end_after=2026-01-22T01:55:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:55:04.495 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:55:04.496 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:55:04.497 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:55:04.498 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:55:04.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:55:04.500 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:55:04.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:55:04.503 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:55:04.503 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:55:04.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:55:04.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:55:04.503 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60581.496726
2026-01-22T03:55:04.503 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:55:04.503 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:55:04.503 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:55:04.504 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:55:04.504 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:55:13.513 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:55:23.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:55:33.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:55:43.552 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:55:53.568 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:56:03.583 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:56:03.586 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:55:52.135798
2026-01-22T03:56:03.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:55:52.135798
2026-01-22T03:56:03.586 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:56:03.586 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:56:03.587 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:56:03.587 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:56:03&start_after=2026-01-21T01:56:03&end_after=2026-01-22T01:56:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:56:03.712 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:56:03.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:56:03.716 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:56:03.719 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:56:03.722 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:56:03.724 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:56:03.728 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:56:03.729 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:56:03.729 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:56:03.729 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:56:03.730 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:56:03.730 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60522.269856
2026-01-22T03:56:03.730 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:56:03.730 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:56:03.730 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:56:03.733 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:56:03.733 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:56:12.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:56:22.761 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:56:32.772 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:56:42.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:56:52.794 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:57:02.804 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:57:02.820 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:56:52.336132
2026-01-22T03:57:02.820 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:56:52.336132
2026-01-22T03:57:02.820 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:57:02.820 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:57:02.820 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:57:02.820 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:57:02&start_after=2026-01-21T01:57:02&end_after=2026-01-22T01:57:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:57:02.941 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:57:02.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:57:02.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:57:02.945 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:57:02.946 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:57:02.947 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:57:02.948 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:57:02.949 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:57:02.949 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:57:02.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:57:02.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:57:02.949 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60463.050258
2026-01-22T03:57:02.949 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:57:02.949 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:57:02.949 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:57:02.950 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:57:02.950 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:57:11.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:57:21.969 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:57:31.979 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:57:41.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:57:52.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:58:02.011 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:58:02.012 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:57:52.537885
2026-01-22T03:58:02.012 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:57:52.537885
2026-01-22T03:58:02.012 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:58:02.012 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:58:02.013 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:58:02.013 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:58:02&start_after=2026-01-21T01:58:02&end_after=2026-01-22T01:58:02&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:58:02.164 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:58:02.166 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:58:02.167 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:58:02.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:58:02.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:58:02.170 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:58:02.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:58:02.172 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:58:02.172 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:58:02.172 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:58:02.172 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:58:02.172 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60403.82704
2026-01-22T03:58:02.172 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:58:02.173 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:58:02.173 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:58:02.173 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:58:02.173 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:58:11.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:58:21.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:58:31.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:58:41.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:58:51.222 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T03:59:01.232 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T03:59:01.251 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:58:52.739281
2026-01-22T03:59:01.251 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:58:52.739281
2026-01-22T03:59:01.251 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T03:59:01.251 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T03:59:01.251 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T03:59:01.251 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T01:59:01&start_after=2026-01-21T01:59:01&end_after=2026-01-22T01:59:01&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T03:59:01.366 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:59:01.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:59:01.368 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:59:01.369 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:59:01.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:59:01.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T03:59:01.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T03:59:01.374 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T03:59:01.374 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T03:59:01.374 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T03:59:01.374 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T03:59:01.374 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60344.625631
2026-01-22T03:59:01.374 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T03:59:01.374 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T03:59:01.374 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T03:59:01.375 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T03:59:01.375 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T03:59:10.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T03:59:20.394 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T03:59:30.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T03:59:40.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T03:59:50.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:00:00.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:00:00.436 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T03:59:52.937480
2026-01-22T04:00:00.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T03:59:52.937480
2026-01-22T04:00:00.436 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:00:00.436 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:00:00.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:00:00.436 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:00:00&start_after=2026-01-21T02:00:00&end_after=2026-01-22T02:00:00&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:00:00.555 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:00.556 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:00.557 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:00.558 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:00.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:00:00.560 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:00.562 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:00:00.563 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:00:00.563 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:00:00.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:00:00.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:00:00.563 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60285.436758
2026-01-22T04:00:00.563 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:00:00.563 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:00:00.563 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:00:00.564 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:00:00.564 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:00:09.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:00:19.584 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:00:29.594 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:00:39.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:00:49.616 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:00:59.631 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:00:59.653 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:00:53.138530
2026-01-22T04:00:59.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:00:53.138530
2026-01-22T04:00:59.681 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:00:59.681 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:00:59.682 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:00:59.682 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:00:59&start_after=2026-01-21T02:00:59&end_after=2026-01-22T02:00:59&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:00:59.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:59.816 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:59.819 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:59.825 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:59.831 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:00:59.833 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:00:59.837 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:00:59.839 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:00:59.839 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:00:59.839 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:00:59.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:00:59.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60226.159909
2026-01-22T04:00:59.840 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:00:59.840 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:00:59.840 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:00:59.841 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:00:59.841 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:01:08.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:01:18.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:01:28.885 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:01:38.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:01:48.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:01:58.921 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:01:58.922 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:01:53.336290
2026-01-22T04:01:58.922 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:01:53.336290
2026-01-22T04:01:58.922 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:01:58.922 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:01:58.922 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:01:58.922 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:01:58&start_after=2026-01-21T02:01:58&end_after=2026-01-22T02:01:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:01:59.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:01:59.037 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:01:59.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:01:59.039 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:01:59.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:01:59.041 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:01:59.043 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:01:59.044 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:01:59.044 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:01:59.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:01:59.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:01:59.044 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60166.955662
2026-01-22T04:01:59.044 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:01:59.044 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:01:59.044 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:01:59.045 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:01:59.045 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:02:08.054 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:02:18.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:02:28.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:02:38.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:02:48.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:02:58.105 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:02:58.123 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:02:53.534590
2026-01-22T04:02:58.124 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:02:53.534590
2026-01-22T04:02:58.124 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:02:58.124 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:02:58.124 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:02:58.124 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:02:58&start_after=2026-01-21T02:02:58&end_after=2026-01-22T02:02:58&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:02:58.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:02:58.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:02:58.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:02:58.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:02:58.273 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:02:58.274 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:02:58.275 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:02:58.276 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:02:58.276 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:02:58.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:02:58.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:02:58.276 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60107.723378
2026-01-22T04:02:58.276 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:02:58.276 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:02:58.276 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:02:58.277 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:02:58.277 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:03:07.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:03:17.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:03:27.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:03:37.317 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:03:47.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:03:57.337 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:03:57.338 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:03:53.734291
2026-01-22T04:03:57.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:03:53.734291
2026-01-22T04:03:57.338 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:03:57.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:03:57.338 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:03:57.338 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:03:57&start_after=2026-01-21T02:03:57&end_after=2026-01-22T02:03:57&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:03:57.458 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:03:57.459 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:03:57.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:03:57.461 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:03:57.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:03:57.463 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:03:57.465 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:03:57.466 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:03:57.466 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:03:57.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:03:57.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:03:57.466 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 60048.533571
2026-01-22T04:03:57.466 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:03:57.466 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:03:57.466 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:03:57.467 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:03:57.467 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:04:06.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:04:16.486 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:04:26.496 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:04:36.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:04:46.517 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:04:56.527 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:04:56.548 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:04:53.933834
2026-01-22T04:04:56.548 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:04:53.933834
2026-01-22T04:04:56.548 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:04:56.548 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:04:56.549 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:04:56.549 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:04:56&start_after=2026-01-21T02:04:56&end_after=2026-01-22T02:04:56&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:04:56.685 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:04:56.686 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:04:56.687 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:04:56.688 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:04:56.690 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:04:56.735 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:04:56.737 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:04:56.738 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:04:56.738 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:04:56.738 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:04:56.738 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:04:56.738 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59989.261586
2026-01-22T04:04:56.738 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:04:56.738 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:04:56.738 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:04:56.739 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:04:56.739 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:05:05.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:05:15.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:05:25.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:05:35.778 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:05:45.789 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:05:55.799 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:05:55.800 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:05:54.132694
2026-01-22T04:05:55.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:05:54.132694
2026-01-22T04:05:55.800 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:05:55.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:05:55.801 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:05:55.801 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:05:55&start_after=2026-01-21T02:05:55&end_after=2026-01-22T02:05:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:05:56.035 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:05:56.036 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:05:56.037 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:05:56.038 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:05:56.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:05:56.040 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:05:56.042 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:05:56.042 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:05:56.043 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:05:56.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:05:56.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:05:56.043 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59929.956888
2026-01-22T04:05:56.043 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:05:56.043 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:05:56.043 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:05:56.043 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:05:56.043 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:06:05.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:06:15.067 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:06:25.081 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:06:35.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:06:45.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:06:55.126 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:06:55.144 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:06:54.334144
2026-01-22T04:06:55.144 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:06:54.334144
2026-01-22T04:06:55.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:06:55.145 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:06:55.146 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:06:55.146 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:06:55&start_after=2026-01-21T02:06:55&end_after=2026-01-22T02:06:55&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:06:55.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:06:55.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:06:55.377 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:06:55.383 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:06:55.390 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:06:55.393 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:06:55.398 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:06:55.400 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:06:55.400 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:06:55.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:06:55.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:06:55.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59870.599535
2026-01-22T04:06:55.400 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:06:55.400 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:06:55.400 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:06:55.402 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:06:55.402 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:07:04.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:07:14.428 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:07:24.439 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:07:34.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:07:44.459 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:07:54.469 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:07:54.470 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:06:54.334144
2026-01-22T04:07:54.470 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:06:54.334144
2026-01-22T04:07:54.471 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:07:54.471 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:07:54.471 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:07:54.471 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:07:54&start_after=2026-01-21T02:07:54&end_after=2026-01-22T02:07:54&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:07:54.588 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:07:54.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:07:54.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:07:54.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:07:54.593 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:07:54.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:07:54.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:07:54.596 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:07:54.596 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:07:54.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:07:54.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:07:54.596 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59811.403309
2026-01-22T04:07:54.596 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:07:54.596 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:07:54.596 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:07:54.598 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:07:54.598 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:08:03.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:08:13.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:08:23.627 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:08:33.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:08:43.647 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:08:53.658 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:08:53.676 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:07:54.538410
2026-01-22T04:08:53.676 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:07:54.538410
2026-01-22T04:08:53.676 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:08:53.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:08:53.677 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:08:53.677 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:08:53&start_after=2026-01-21T02:08:53&end_after=2026-01-22T02:08:53&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:08:53.792 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:08:53.794 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:08:53.794 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:08:53.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:08:53.797 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:08:53.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:08:53.799 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:08:53.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:08:53.800 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:08:53.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:08:53.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:08:53.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59752.199353
2026-01-22T04:08:53.800 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:08:53.800 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:08:53.800 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:08:53.801 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:08:53.801 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:09:02.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:09:12.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:09:22.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:09:32.840 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:09:42.851 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:09:52.861 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:09:52.862 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:08:54.745828
2026-01-22T04:09:52.862 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:08:54.745828
2026-01-22T04:09:52.862 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:09:52.862 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:09:52.862 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:09:52.863 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:09:52&start_after=2026-01-21T02:09:52&end_after=2026-01-22T02:09:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:09:52.988 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:09:52.989 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:09:52.990 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:09:52.991 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:09:52.993 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:09:52.994 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:09:52.995 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:09:52.996 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:09:52.996 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 7 configurations
2026-01-22T04:09:52.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:09:52.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:09:52.996 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59693.003444
2026-01-22T04:09:52.996 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:09:52.996 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:09:52.996 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:09:52.997 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:09:52.997 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:10:02.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:10:12.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:10:22.026 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:10:32.036 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:10:42.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:10:52.055 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:10:52.072 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:09:54.944549
2026-01-22T04:10:52.072 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:09:54.944549
2026-01-22T04:10:52.072 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:10:52.072 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:10:52.072 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:10:52.072 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:10:52&start_after=2026-01-21T02:10:52&end_after=2026-01-22T02:10:52&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:10:52.199 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:10:52.201 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:10:52.202 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:10:52.203 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:10:52.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:10:52.205 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:10:52.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:10:52.207 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:10:52.209 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:10:52.209 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:10:52.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:10:52.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:10:52.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59633.790208
2026-01-22T04:10:52.209 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:10:52.209 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:10:52.209 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:10:52.210 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:10:52.210 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:11:01.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:11:11.228 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:11:21.238 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:11:31.252 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:11:41.267 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:11:51.282 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:11:51.302 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:10:55.146722
2026-01-22T04:11:51.302 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:10:55.146722
2026-01-22T04:11:51.302 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:11:51.302 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:11:51.303 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:11:51.303 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:11:51&start_after=2026-01-21T02:11:51&end_after=2026-01-22T02:11:51&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:11:51.430 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:11:51.434 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:11:51.436 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:11:51.441 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:11:51.446 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:11:51.448 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:11:51.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:11:51.456 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:11:51.461 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:11:51.461 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:11:51.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:11:51.461 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:11:51.462 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59574.537989
2026-01-22T04:11:51.462 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:11:51.462 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:11:51.462 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:11:51.463 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:11:51.463 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:12:00.476 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:12:10.491 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:12:20.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:12:30.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:12:40.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:12:50.538 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:12:50.559 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:11:55.347310
2026-01-22T04:12:50.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:11:55.347310
2026-01-22T04:12:50.559 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:12:50.559 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:12:50.559 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:12:50.559 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:12:50&start_after=2026-01-21T02:12:50&end_after=2026-01-22T02:12:50&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:12:50.697 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:12:50.699 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:12:50.700 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:12:50.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:12:50.702 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:12:50.703 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:12:50.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:12:50.705 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:12:50.707 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:12:50.707 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:12:50.707 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:12:50.707 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:12:50.707 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59515.292333
2026-01-22T04:12:50.707 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:12:50.707 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:12:50.707 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:12:50.708 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:12:50.708 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:12:59.717 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:13:09.727 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:13:19.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:13:29.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:13:39.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:13:49.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:13:49.769 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:12:55.546050
2026-01-22T04:13:49.769 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:12:55.546050
2026-01-22T04:13:49.770 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:13:49.770 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:13:49.770 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:13:49.770 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:13:49&start_after=2026-01-21T02:13:49&end_after=2026-01-22T02:13:49&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:13:49.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:13:49.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:13:49.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:13:49.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:13:49.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:13:49.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:13:49.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:13:49.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:13:49.904 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:13:49.904 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:13:49.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:13:49.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:13:49.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59456.095459
2026-01-22T04:13:49.904 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:13:49.904 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:13:49.904 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:13:49.905 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:13:49.905 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:13:58.914 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:14:08.925 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:14:18.935 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:14:28.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:14:38.956 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:14:48.966 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:14:48.984 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:13:55.746775
2026-01-22T04:14:48.984 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:13:55.746775
2026-01-22T04:14:48.984 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:14:48.984 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:14:48.985 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:14:48.985 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:14:48&start_after=2026-01-21T02:14:48&end_after=2026-01-22T02:14:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:14:49.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:14:49.104 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:14:49.105 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:14:49.106 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:14:49.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:14:49.108 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:14:49.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:14:49.110 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:14:49.112 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:14:49.112 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:14:49.112 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:14:49.112 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:14:49.112 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59396.887344
2026-01-22T04:14:49.112 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:14:49.112 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:14:49.112 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:14:49.113 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:14:49.113 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:14:58.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:15:08.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:15:18.143 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:15:28.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:15:38.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:15:48.173 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:15:48.174 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:14:55.948489
2026-01-22T04:15:48.174 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:14:55.948489
2026-01-22T04:15:48.174 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:15:48.174 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:15:48.174 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:15:48.174 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:15:48&start_after=2026-01-21T02:15:48&end_after=2026-01-22T02:15:48&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:15:48.309 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:15:48.310 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:15:48.311 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:15:48.313 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:15:48.314 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:15:48.315 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:15:48.316 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:15:48.317 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:15:48.319 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:15:48.319 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:15:48.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:15:48.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:15:48.319 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59337.680756
2026-01-22T04:15:48.319 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:15:48.319 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:15:48.319 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:15:48.320 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:15:48.320 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:15:57.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:16:07.339 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:16:17.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:16:27.359 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:16:37.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:16:47.381 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:16:47.400 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:15:56.148128
2026-01-22T04:16:47.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:15:56.148128
2026-01-22T04:16:47.400 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:16:47.400 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:16:47.401 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:16:47.401 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:16:47&start_after=2026-01-21T02:16:47&end_after=2026-01-22T02:16:47&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:16:47.529 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:16:47.533 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:16:47.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:16:47.540 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:16:47.544 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:16:47.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:16:47.552 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:16:47.554 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:16:47.559 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:16:47.560 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:16:47.560 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:16:47.560 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:16:47.560 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59278.439553
2026-01-22T04:16:47.560 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:16:47.560 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:16:47.560 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:16:47.562 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:16:47.562 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:16:56.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:17:06.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:17:16.605 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:17:26.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:17:36.635 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:17:46.646 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:17:46.649 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:16:56.346609
2026-01-22T04:17:46.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:16:56.346609
2026-01-22T04:17:46.649 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:17:46.649 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:17:46.650 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:17:46.650 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:17:46&start_after=2026-01-21T02:17:46&end_after=2026-01-22T02:17:46&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:17:46.779 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:17:46.781 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:17:46.782 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:17:46.783 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:17:46.784 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:17:46.785 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:17:46.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:17:46.787 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:17:46.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:17:46.789 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:17:46.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:17:46.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:17:46.789 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59219.210418
2026-01-22T04:17:46.789 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:17:46.789 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:17:46.789 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:17:46.790 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:17:46.790 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:17:55.802 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:18:05.817 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:18:15.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:18:25.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:18:35.862 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:18:45.877 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:18:45.879 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:17:56.554675
2026-01-22T04:18:45.879 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:17:56.554675
2026-01-22T04:18:45.879 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:18:45.880 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:18:45.880 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:18:45.881 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:18:45&start_after=2026-01-21T02:18:45&end_after=2026-01-22T02:18:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:18:46.115 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:18:46.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:18:46.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:18:46.132 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:18:46.138 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:18:46.141 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:18:46.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:18:46.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:18:46.152 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:18:46.152 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:18:46.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:18:46.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:18:46.152 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59159.847597
2026-01-22T04:18:46.152 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:18:46.152 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:18:46.152 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:18:46.171 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:18:46.172 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:18:55.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:19:05.192 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:19:15.202 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:19:25.212 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:19:35.222 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:19:45.232 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:19:45.233 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:18:56.753843
2026-01-22T04:19:45.233 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:18:56.753843
2026-01-22T04:19:45.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:19:45.233 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:19:45.233 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:19:45.233 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:19:45&start_after=2026-01-21T02:19:45&end_after=2026-01-22T02:19:45&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:19:45.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:19:45.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:19:45.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:19:45.359 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:19:45.360 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:19:45.361 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:19:45.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:19:45.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:19:45.364 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:19:45.365 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:19:45.365 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:19:45.365 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:19:45.365 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59100.634797
2026-01-22T04:19:45.365 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:19:45.365 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:19:45.365 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:19:45.366 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:19:45.366 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:19:54.375 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:20:04.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:20:14.396 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:20:24.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:20:34.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:20:44.427 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:20:44.428 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:19:56.956627
2026-01-22T04:20:44.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:19:56.956627
2026-01-22T04:20:44.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:20:44.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:20:44.429 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:20:44.429 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:20:44&start_after=2026-01-21T02:20:44&end_after=2026-01-22T02:20:44&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:20:44.545 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:20:44.547 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:20:44.548 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:20:44.549 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:20:44.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:20:44.551 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:20:44.553 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:20:44.553 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:20:44.555 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:20:44.555 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:20:44.555 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:20:44.555 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:20:44.555 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 59041.444343
2026-01-22T04:20:44.555 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:20:44.555 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:20:44.555 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:20:44.576 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:20:44.576 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:20:53.586 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:21:03.596 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:21:13.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:21:23.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:21:33.627 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:21:43.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:21:43.655 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:20:57.160839
2026-01-22T04:21:43.656 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:20:57.160839
2026-01-22T04:21:43.656 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:21:43.656 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:21:43.656 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:21:43.656 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:21:43&start_after=2026-01-21T02:21:43&end_after=2026-01-22T02:21:43&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:21:43.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:21:43.893 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:21:43.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:21:43.895 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:21:43.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:21:43.897 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:21:43.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:21:43.900 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:21:43.901 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:21:43.901 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:21:43.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:21:43.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:21:43.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58982.098116
2026-01-22T04:21:43.901 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:21:43.901 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:21:43.901 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:21:43.902 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:21:43.902 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:21:52.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:22:02.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:22:12.933 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:22:22.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:22:32.954 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:22:42.964 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:22:42.985 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:21:57.361146
2026-01-22T04:22:42.985 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:21:57.361146
2026-01-22T04:22:42.985 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:22:42.985 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:22:42.985 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:22:42.985 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:22:42&start_after=2026-01-21T02:22:42&end_after=2026-01-22T02:22:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:22:43.120 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:22:43.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:22:43.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:22:43.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:22:43.125 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:22:43.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:22:43.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:22:43.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:22:43.130 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:22:43.130 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:22:43.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:22:43.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:22:43.130 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58922.869508
2026-01-22T04:22:43.130 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:22:43.130 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:22:43.130 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:22:43.131 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:22:43.131 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:22:52.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:23:02.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:23:12.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:23:22.177 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:23:32.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:23:42.207 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:23:42.209 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:22:57.563349
2026-01-22T04:23:42.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:22:57.563349
2026-01-22T04:23:42.209 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:23:42.209 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:23:42.210 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:23:42.211 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:23:42&start_after=2026-01-21T02:23:42&end_after=2026-01-22T02:23:42&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:23:42.339 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:23:42.347 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:23:42.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:23:42.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:23:42.363 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:23:42.366 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:23:42.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:23:42.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:23:42.376 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:23:42.376 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:23:42.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:23:42.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:23:42.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58863.623149
2026-01-22T04:23:42.376 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:23:42.376 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:23:42.377 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:23:42.378 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:23:42.378 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:23:51.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:24:01.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:24:11.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:24:21.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:24:31.442 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:24:41.453 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:24:41.454 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:23:57.769823
2026-01-22T04:24:41.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:23:57.769823
2026-01-22T04:24:41.454 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:24:41.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:24:41.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:24:41.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:24:41&start_after=2026-01-21T02:24:41&end_after=2026-01-22T02:24:41&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:24:41.590 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:24:41.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:24:41.592 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:24:41.594 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:24:41.595 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:24:41.596 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:24:41.597 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:24:41.598 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:24:41.599 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:24:41.600 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:24:41.600 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:24:41.600 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:24:41.600 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58804.39987
2026-01-22T04:24:41.600 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:24:41.600 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:24:41.600 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:24:41.614 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:24:41.614 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:24:50.624 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:25:00.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:25:10.644 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:25:20.654 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:25:30.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:25:40.675 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:25:40.691 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:24:57.970927
2026-01-22T04:25:40.691 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:24:57.970927
2026-01-22T04:25:40.691 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:25:40.691 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:25:40.691 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:25:40.691 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:25:40&start_after=2026-01-21T02:25:40&end_after=2026-01-22T02:25:40&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:25:40.807 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:25:40.808 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:25:40.809 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:25:40.810 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:25:40.812 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:25:40.812 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:25:40.814 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:25:40.815 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:25:40.816 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:25:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:25:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:25:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:25:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58745.18323
2026-01-22T04:25:40.816 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:25:40.816 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:25:40.816 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:25:40.818 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:25:40.818 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:25:49.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:25:59.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:26:09.849 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:26:19.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:26:29.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:26:39.879 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:26:39.901 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:25:58.169007
2026-01-22T04:26:39.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:25:58.169007
2026-01-22T04:26:39.901 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:26:39.901 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:26:39.902 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:26:39.902 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:26:39&start_after=2026-01-21T02:26:39&end_after=2026-01-22T02:26:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:26:40.020 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:26:40.021 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:26:40.022 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:26:40.023 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:26:40.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:26:40.025 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:26:40.027 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:26:40.028 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:26:40.029 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:26:40.029 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:26:40.029 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:26:40.029 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:26:40.029 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58685.970179
2026-01-22T04:26:40.029 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:26:40.029 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:26:40.029 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:26:40.030 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:26:40.030 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:26:49.040 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:26:59.050 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:27:09.059 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:27:19.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:27:29.079 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:27:39.089 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:27:39.109 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:26:58.367480
2026-01-22T04:27:39.109 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:26:58.367480
2026-01-22T04:27:39.110 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:27:39.110 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:27:39.110 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:27:39.110 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:27:39&start_after=2026-01-21T02:27:39&end_after=2026-01-22T02:27:39&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:27:39.229 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:27:39.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:27:39.231 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:27:39.233 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:27:39.234 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:27:39.235 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:27:39.236 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:27:39.237 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:27:39.238 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:27:39.239 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:27:39.239 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:27:39.239 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:27:39.239 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58626.76087
2026-01-22T04:27:39.239 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:27:39.239 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:27:39.239 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:27:39.240 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:27:39.240 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:27:48.249 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:27:58.259 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:28:08.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:28:18.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:28:28.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:28:38.303 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:28:38.305 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:27:58.565118
2026-01-22T04:28:38.305 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:27:58.565118
2026-01-22T04:28:38.306 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:28:38.306 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:28:38.307 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:28:38.307 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:28:38&start_after=2026-01-21T02:28:38&end_after=2026-01-22T02:28:38&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:28:38.442 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:28:38.450 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:28:38.453 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:28:38.460 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:28:38.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:28:38.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:28:38.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:28:38.475 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:28:38.478 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:28:38.478 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:28:38.478 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:28:38.478 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:28:38.478 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58567.52104
2026-01-22T04:28:38.479 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:28:38.479 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:28:38.479 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:28:38.480 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:28:38.480 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:28:47.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:28:57.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:29:07.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:29:17.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:29:27.551 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:29:37.563 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:29:37.579 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:28:58.767055
2026-01-22T04:29:37.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:28:58.767055
2026-01-22T04:29:37.579 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:29:37.579 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:29:37.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:29:37.579 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:29:37&start_after=2026-01-21T02:29:37&end_after=2026-01-22T02:29:37&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:29:37.696 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:29:37.697 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:29:37.698 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:29:37.699 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:29:37.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:29:37.701 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:29:37.703 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:29:37.704 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:29:37.705 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:29:37.705 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:29:37.705 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:29:37.705 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:29:37.705 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58508.294246
2026-01-22T04:29:37.705 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:29:37.705 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:29:37.705 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:29:37.706 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:29:37.706 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:29:46.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:29:56.726 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:30:06.737 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:30:16.748 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:30:26.759 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:30:36.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:30:36.788 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:29:58.966532
2026-01-22T04:30:36.788 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:29:58.966532
2026-01-22T04:30:36.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:30:36.788 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:30:36.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:30:36.789 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:30:36&start_after=2026-01-21T02:30:36&end_after=2026-01-22T02:30:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:30:36.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:30:36.933 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:30:36.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:30:36.935 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:30:36.936 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:30:36.937 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:30:36.938 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:30:36.939 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:30:36.941 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:30:36.941 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:30:36.941 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:30:36.941 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:30:36.941 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58449.058642
2026-01-22T04:30:36.941 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:30:36.941 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:30:36.941 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:30:36.942 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:30:36.942 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:30:45.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:30:55.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:31:05.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:31:15.982 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:31:25.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:31:36.003 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:31:36.022 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:30:59.165533
2026-01-22T04:31:36.022 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:30:59.165533
2026-01-22T04:31:36.022 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:31:36.022 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:31:36.023 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:31:36.023 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:31:36&start_after=2026-01-21T02:31:36&end_after=2026-01-22T02:31:36&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:31:36.141 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:31:36.142 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:31:36.143 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:31:36.144 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:31:36.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:31:36.146 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:31:36.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:31:36.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:31:36.150 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:31:36.150 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:31:36.150 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:31:36.150 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:31:36.150 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58389.849237
2026-01-22T04:31:36.150 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:31:36.150 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:31:36.150 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:31:36.151 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:31:36.151 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:31:45.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:31:55.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:32:05.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:32:15.190 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:32:25.200 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:32:35.210 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:32:35.211 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:31:59.367299
2026-01-22T04:32:35.211 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:31:59.367299
2026-01-22T04:32:35.211 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:32:35.211 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:32:35.212 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:32:35.212 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:32:35&start_after=2026-01-21T02:32:35&end_after=2026-01-22T02:32:35&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:32:35.329 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:32:35.330 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:32:35.331 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:32:35.332 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:32:35.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:32:35.334 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:32:35.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:32:35.336 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:32:35.338 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:32:35.338 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:32:35.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:32:35.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:32:35.338 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58330.661309
2026-01-22T04:32:35.338 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:32:35.338 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:32:35.338 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:32:35.339 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:32:35.339 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:32:44.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:32:54.358 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:33:04.368 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:33:14.379 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:33:24.389 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:33:34.400 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:33:34.415 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:32:59.566470
2026-01-22T04:33:34.415 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:32:59.566470
2026-01-22T04:33:34.415 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:33:34.415 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:33:34.415 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:33:34.415 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:33:34&start_after=2026-01-21T02:33:34&end_after=2026-01-22T02:33:34&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:33:34.525 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:33:34.526 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:33:34.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:33:34.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:33:34.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:33:34.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:33:34.532 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:33:34.533 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:33:34.534 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:33:34.534 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:33:34.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:33:34.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:33:34.534 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58271.465217
2026-01-22T04:33:34.534 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:33:34.534 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:33:34.534 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:33:34.535 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:33:34.535 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:33:43.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:33:53.561 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:34:03.575 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:34:13.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:34:23.606 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:34:33.621 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:34:33.623 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:33:59.766003
2026-01-22T04:34:33.624 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:33:59.766003
2026-01-22T04:34:33.624 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:34:33.624 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:34:33.625 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:34:33.625 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:34:33&start_after=2026-01-21T02:34:33&end_after=2026-01-22T02:34:33&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:34:33.740 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:34:33.743 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:34:33.744 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:34:33.747 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:34:33.750 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:34:33.751 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:34:33.754 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:34:33.755 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:34:33.758 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:34:33.759 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:34:33.759 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:34:33.759 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:34:33.759 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58212.240685
2026-01-22T04:34:33.759 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:34:33.759 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:34:33.759 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:34:33.760 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:34:33.760 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:34:42.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:34:52.785 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:35:02.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:35:12.805 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:35:22.815 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:35:32.824 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:35:32.846 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:34:59.964199
2026-01-22T04:35:32.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:34:59.964199
2026-01-22T04:35:32.846 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:35:32.846 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:35:32.847 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:35:32.847 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:35:32&start_after=2026-01-21T02:35:32&end_after=2026-01-22T02:35:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:35:32.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:35:32.958 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:35:32.959 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:35:32.960 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:35:32.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:35:32.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:35:32.964 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:35:32.965 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:35:32.966 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:35:32.966 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:35:32.966 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:35:32.966 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:35:32.966 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58153.033152
2026-01-22T04:35:32.966 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:35:32.966 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:35:32.966 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:35:32.967 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:35:32.967 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:35:41.976 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:35:51.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:36:01.996 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:36:12.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:36:22.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:36:32.026 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:36:32.027 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:36:00.163398
2026-01-22T04:36:32.027 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:36:00.163398
2026-01-22T04:36:32.027 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:36:32.027 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:36:32.027 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:36:32.027 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:36:32&start_after=2026-01-21T02:36:32&end_after=2026-01-22T02:36:32&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:36:32.145 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:36:32.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:36:32.148 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:36:32.149 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:36:32.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:36:32.151 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:36:32.152 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:36:32.153 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:36:32.155 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:36:32.155 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:36:32.155 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:36:32.155 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:36:32.155 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58093.844666
2026-01-22T04:36:32.155 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:36:32.155 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:36:32.155 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:36:32.156 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:36:32.156 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:36:41.164 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:36:51.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:37:01.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:37:11.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:37:21.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:37:31.213 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:37:31.232 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:37:00.362162
2026-01-22T04:37:31.232 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:37:00.362162
2026-01-22T04:37:31.232 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:37:31.232 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:37:31.233 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:37:31.233 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:37:31&start_after=2026-01-21T02:37:31&end_after=2026-01-22T02:37:31&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:37:31.344 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:37:31.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:37:31.346 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:37:31.348 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:37:31.349 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:37:31.350 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:37:31.351 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:37:31.352 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:37:31.353 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:37:31.353 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:37:31.353 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:37:31.353 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:37:31.353 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 58034.646048
2026-01-22T04:37:31.353 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:37:31.354 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:37:31.354 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:37:31.354 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:37:31.354 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:37:40.363 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:37:50.372 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:38:00.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:38:10.392 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:38:20.400 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:38:30.410 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:38:30.411 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:38:00.570758
2026-01-22T04:38:30.411 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:38:00.570758
2026-01-22T04:38:30.411 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:38:30.411 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:38:30.412 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:38:30.412 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:38:30&start_after=2026-01-21T02:38:30&end_after=2026-01-22T02:38:30&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:38:30.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:38:30.529 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:38:30.530 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:38:30.531 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:38:30.532 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:38:30.533 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:38:30.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:38:30.535 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:38:30.537 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:38:30.537 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:38:30.537 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:38:30.537 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:38:30.537 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57975.462534
2026-01-22T04:38:30.537 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:38:30.537 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:38:30.537 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:38:30.538 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:38:30.538 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:38:39.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:38:49.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:38:59.567 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:39:09.580 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:39:19.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:39:29.609 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:39:29.630 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:39:00.769662
2026-01-22T04:39:29.630 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:39:00.769662
2026-01-22T04:39:29.631 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:39:29.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:39:29.632 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:39:29.632 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:39:29&start_after=2026-01-21T02:39:29&end_after=2026-01-22T02:39:29&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:39:29.750 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:39:29.752 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:39:29.753 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:39:29.755 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:39:29.757 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:39:29.758 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:39:29.761 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:39:29.762 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:39:29.764 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:39:29.764 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:39:29.764 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:39:29.764 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:39:29.764 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57916.235133
2026-01-22T04:39:29.764 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:39:29.764 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:39:29.765 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:39:29.766 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:39:29.766 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:39:38.777 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:39:48.792 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:39:58.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:40:08.817 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:40:18.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:40:28.839 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:40:28.840 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:40:00.971659
2026-01-22T04:40:28.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:40:00.971659
2026-01-22T04:40:28.840 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:40:28.840 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:40:28.840 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:40:28.840 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:40:28&start_after=2026-01-21T02:40:28&end_after=2026-01-22T02:40:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:40:28.954 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:40:28.956 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:40:28.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:40:28.958 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:40:28.959 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:40:28.960 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:40:28.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:40:28.962 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:40:28.964 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:40:28.964 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:40:28.964 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:40:28.964 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:40:28.964 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57857.035519
2026-01-22T04:40:28.964 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:40:28.964 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:40:28.964 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:40:28.965 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:40:28.965 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:40:37.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:40:47.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:40:57.994 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:41:08.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:41:18.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:41:28.024 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:41:28.025 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:41:01.171729
2026-01-22T04:41:28.025 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:41:01.171729
2026-01-22T04:41:28.025 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:41:28.025 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:41:28.025 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:41:28.025 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:41:28&start_after=2026-01-21T02:41:28&end_after=2026-01-22T02:41:28&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:41:28.168 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:41:28.169 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:41:28.170 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:41:28.172 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:41:28.173 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:41:28.174 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:41:28.175 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:41:28.176 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:41:28.178 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:41:28.178 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:41:28.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:41:28.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:41:28.178 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57797.821677
2026-01-22T04:41:28.178 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:41:28.178 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:41:28.178 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:41:28.196 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:41:28.196 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:41:37.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:41:47.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:41:57.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:42:07.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:42:17.247 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:42:27.257 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:42:27.278 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:42:01.372089
2026-01-22T04:42:27.278 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:42:01.372089
2026-01-22T04:42:27.278 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:42:27.278 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:42:27.278 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:42:27.278 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:42:27&start_after=2026-01-21T02:42:27&end_after=2026-01-22T02:42:27&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:42:27.418 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:42:27.419 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:42:27.421 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:42:27.422 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:42:27.423 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:42:27.424 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:42:27.426 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:42:27.426 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:42:27.428 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:42:27.428 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:42:27.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:42:27.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:42:27.428 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57738.571528
2026-01-22T04:42:27.428 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:42:27.428 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:42:27.428 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:42:27.429 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:42:27.429 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:42:36.438 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:42:46.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:42:56.459 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:43:06.470 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:43:16.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:43:26.491 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:43:26.492 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:43:01.584313
2026-01-22T04:43:26.492 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:43:01.584313
2026-01-22T04:43:26.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:43:26.492 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:43:26.492 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:43:26.492 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:43:26&start_after=2026-01-21T02:43:26&end_after=2026-01-22T02:43:26&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:43:26.629 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:43:26.630 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:43:26.632 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:43:26.633 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:43:26.634 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:43:26.635 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:43:26.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:43:26.637 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:43:26.639 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:43:26.639 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:43:26.639 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:43:26.639 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:43:26.639 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57679.360568
2026-01-22T04:43:26.639 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:43:26.639 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:43:26.639 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:43:26.640 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:43:26.640 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:43:35.649 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:43:45.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:43:55.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:44:05.680 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:44:15.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:44:25.701 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:44:25.721 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:44:01.792456
2026-01-22T04:44:25.721 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:44:01.792456
2026-01-22T04:44:25.721 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:44:25.721 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:44:25.721 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:44:25.721 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:44:25&start_after=2026-01-21T02:44:25&end_after=2026-01-22T02:44:25&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:44:25.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:44:25.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:44:25.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:44:25.855 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:44:25.857 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:44:25.857 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:44:25.859 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:44:25.860 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:44:25.861 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:44:25.861 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:44:25.861 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:44:25.861 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:44:25.861 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57620.138195
2026-01-22T04:44:25.861 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:44:25.861 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:44:25.861 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:44:25.862 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:44:25.862 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:44:34.876 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:44:44.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:44:54.906 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:45:04.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:45:14.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:45:24.952 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:45:24.954 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:45:01.992185
2026-01-22T04:45:24.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:45:01.992185
2026-01-22T04:45:24.955 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:45:24.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:45:24.956 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:45:24.956 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:45:24&start_after=2026-01-21T02:45:24&end_after=2026-01-22T02:45:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:45:25.077 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:45:25.080 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:45:25.087 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:45:25.093 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:45:25.099 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:45:25.102 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:45:25.107 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:45:25.109 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:45:25.112 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:45:25.113 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:45:25.113 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:45:25.113 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:45:25.113 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57560.886605
2026-01-22T04:45:25.113 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:45:25.113 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:45:25.113 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:45:25.114 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:45:25.114 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:45:34.124 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:45:44.134 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:45:54.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:46:04.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:46:14.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:46:24.171 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:46:24.188 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:46:02.191621
2026-01-22T04:46:24.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:46:02.191621
2026-01-22T04:46:24.188 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:46:24.188 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:46:24.188 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:46:24.188 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:46:24&start_after=2026-01-21T02:46:24&end_after=2026-01-22T02:46:24&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:46:24.300 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:46:24.301 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:46:24.303 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:46:24.304 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:46:24.305 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:46:24.306 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:46:24.307 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:46:24.308 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:46:24.310 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:46:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:46:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:46:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:46:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57501.689604
2026-01-22T04:46:24.310 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:46:24.310 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:46:24.310 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:46:24.311 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:46:24.311 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:46:33.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:46:43.331 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:46:53.341 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:47:03.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:47:13.361 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:47:23.371 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:47:23.372 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:47:02.391990
2026-01-22T04:47:23.372 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:47:02.391990
2026-01-22T04:47:23.372 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:47:23.372 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:47:23.372 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:47:23.372 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:47:23&start_after=2026-01-21T02:47:23&end_after=2026-01-22T02:47:23&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:47:23.502 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:47:23.503 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:47:23.504 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:47:23.506 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:47:23.507 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:47:23.508 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:47:23.509 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:47:23.510 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:47:23.512 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:47:23.512 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:47:23.512 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:47:23.512 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:47:23.512 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57442.487662
2026-01-22T04:47:23.512 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:47:23.512 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:47:23.512 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:47:23.513 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:47:23.513 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:47:32.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:47:42.533 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:47:52.543 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:48:02.554 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:48:12.564 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:48:22.574 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:48:22.591 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:48:02.594916
2026-01-22T04:48:22.591 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:48:02.594916
2026-01-22T04:48:22.591 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:48:22.591 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:48:22.591 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:48:22.591 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:48:22&start_after=2026-01-21T02:48:22&end_after=2026-01-22T02:48:22&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:48:22.709 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:48:22.710 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:48:22.711 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:48:22.713 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:48:22.714 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:48:22.715 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:48:22.716 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:48:22.717 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:48:22.718 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:48:22.719 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:48:22.719 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:48:22.719 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:48:22.719 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57383.280884
2026-01-22T04:48:22.719 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:48:22.719 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:48:22.719 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:48:22.720 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:48:22.720 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:48:31.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:48:41.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:48:51.749 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:49:01.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:49:11.770 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:49:21.781 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:49:21.782 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:49:02.796141
2026-01-22T04:49:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:49:02.796141
2026-01-22T04:49:21.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:49:21.782 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:49:21.782 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:49:21.782 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:49:21&start_after=2026-01-21T02:49:21&end_after=2026-01-22T02:49:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:49:21.891 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:49:21.892 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:49:21.894 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:49:21.896 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:49:21.898 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:49:21.899 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:49:21.901 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:49:21.902 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:49:21.904 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:49:21.904 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:49:21.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:49:21.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:49:21.904 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57324.095314
2026-01-22T04:49:21.904 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:49:21.904 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:49:21.904 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:49:21.905 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:49:21.905 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:49:30.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:49:40.925 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:49:50.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:50:00.952 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:50:10.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:50:20.981 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:50:21.002 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:50:03.000321
2026-01-22T04:50:21.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:50:03.000321
2026-01-22T04:50:21.002 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:50:21.002 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:50:21.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:50:21.003 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:50:21&start_after=2026-01-21T02:50:21&end_after=2026-01-22T02:50:21&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:50:21.127 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:50:21.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:50:21.135 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:50:21.141 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:50:21.147 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:50:21.150 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:50:21.156 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:50:21.159 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:50:21.163 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:50:21.163 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:50:21.163 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:50:21.163 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:50:21.163 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57264.836141
2026-01-22T04:50:21.163 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:50:21.164 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:50:21.164 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:50:21.165 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:50:21.165 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:50:30.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:50:40.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:50:50.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:51:00.217 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:51:10.227 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:51:20.236 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:51:20.258 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:51:03.198481
2026-01-22T04:51:20.258 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:51:03.198481
2026-01-22T04:51:20.258 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:51:20.258 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:51:20.258 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:51:20.258 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:51:20&start_after=2026-01-21T02:51:20&end_after=2026-01-22T02:51:20&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:51:20.366 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:51:20.367 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:51:20.368 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:51:20.370 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:51:20.371 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:51:20.372 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:51:20.373 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:51:20.374 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:51:20.376 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:51:20.376 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:51:20.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:51:20.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:51:20.376 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57205.623637
2026-01-22T04:51:20.376 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:51:20.376 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:51:20.376 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:51:20.377 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:51:20.377 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:51:29.386 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:51:39.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:51:49.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:51:59.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:52:09.428 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:52:19.439 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:52:19.454 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:52:03.396753
2026-01-22T04:52:19.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:52:03.396753
2026-01-22T04:52:19.454 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:52:19.454 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:52:19.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:52:19.454 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:52:19&start_after=2026-01-21T02:52:19&end_after=2026-01-22T02:52:19&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:52:19.565 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:52:19.566 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:52:19.567 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:52:19.569 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:52:19.570 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:52:19.571 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:52:19.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:52:19.573 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:52:19.575 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:52:19.575 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:52:19.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:52:19.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:52:19.575 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57146.424188
2026-01-22T04:52:19.575 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:52:19.575 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:52:19.575 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:52:19.576 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:52:19.576 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:52:28.586 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:52:38.596 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:52:48.607 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:52:58.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:53:08.628 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:53:18.638 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:53:18.639 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:53:03.602914
2026-01-22T04:53:18.639 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:53:03.602914
2026-01-22T04:53:18.639 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:53:18.639 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:53:18.639 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:53:18.640 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:53:18&start_after=2026-01-21T02:53:18&end_after=2026-01-22T02:53:18&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:53:18.790 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:53:18.791 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:53:18.793 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:53:18.794 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:53:18.795 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:53:18.796 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:53:18.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:53:18.798 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:53:18.800 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:53:18.800 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:53:18.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:53:18.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:53:18.800 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57087.199563
2026-01-22T04:53:18.800 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:53:18.800 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:53:18.800 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:53:18.801 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:53:18.801 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:53:27.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:53:37.821 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:53:47.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:53:57.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:54:07.852 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:54:17.863 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:54:17.883 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:54:03.803772
2026-01-22T04:54:17.883 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:54:03.803772
2026-01-22T04:54:17.884 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:54:17.884 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:54:17.884 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:54:17.884 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:54:17&start_after=2026-01-21T02:54:17&end_after=2026-01-22T02:54:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:54:17.998 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:54:17.999 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:54:18.001 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:54:18.002 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:54:18.003 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:54:18.004 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:54:18.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:54:18.006 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:54:18.008 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:54:18.008 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:54:18.008 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:54:18.008 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:54:18.008 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 57027.991436
2026-01-22T04:54:18.008 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:54:18.008 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:54:18.008 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:54:18.009 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:54:18.009 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:54:27.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:54:37.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:54:47.038 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:54:57.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:55:07.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:55:17.068 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:55:17.069 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:55:04.005000
2026-01-22T04:55:17.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:55:04.005000
2026-01-22T04:55:17.069 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:55:17.069 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:55:17.069 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:55:17.069 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:55:17&start_after=2026-01-21T02:55:17&end_after=2026-01-22T02:55:17&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:55:17.183 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:55:17.184 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:55:17.186 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:55:17.187 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:55:17.188 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:55:17.189 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:55:17.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:55:17.191 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:55:17.193 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:55:17.193 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:55:17.193 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:55:17.193 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:55:17.193 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56968.806519
2026-01-22T04:55:17.193 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:55:17.193 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:55:17.193 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:55:17.194 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:55:17.194 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:55:26.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:55:36.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:55:46.235 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:55:56.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:56:06.263 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:56:16.276 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:56:16.300 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:56:04.203562
2026-01-22T04:56:16.300 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:56:04.203562
2026-01-22T04:56:16.300 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:56:16.301 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:56:16.301 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:56:16.302 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:56:16&start_after=2026-01-21T02:56:16&end_after=2026-01-22T02:56:16&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:56:16.449 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:56:16.451 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:56:16.454 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:56:16.458 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:56:16.462 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:56:16.464 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:56:16.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:56:16.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:56:16.474 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:56:16.474 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:56:16.474 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:56:16.474 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:56:16.474 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56909.525164
2026-01-22T04:56:16.474 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:56:16.475 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:56:16.475 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:56:16.476 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:56:16.476 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:56:25.487 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:56:35.496 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:56:45.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:56:55.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:57:05.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:57:15.535 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:57:15.555 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:57:04.403827
2026-01-22T04:57:15.555 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:57:04.403827
2026-01-22T04:57:15.555 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:57:15.555 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:57:15.556 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:57:15.556 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:57:15&start_after=2026-01-21T02:57:15&end_after=2026-01-22T02:57:15&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:57:15.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:57:15.671 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:57:15.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:57:15.674 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:57:15.675 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:57:15.676 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:57:15.677 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:57:15.678 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:57:15.680 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:57:15.680 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:57:15.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:57:15.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:57:15.680 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56850.319764
2026-01-22T04:57:15.680 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:57:15.680 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:57:15.680 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:57:15.681 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:57:15.681 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:57:24.690 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:57:34.701 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:57:44.711 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:57:54.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:58:04.731 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:58:14.740 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:58:14.741 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:58:04.603977
2026-01-22T04:58:14.741 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:58:04.603977
2026-01-22T04:58:14.741 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:58:14.741 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:58:14.741 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:58:14.741 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:58:14&start_after=2026-01-21T02:58:14&end_after=2026-01-22T02:58:14&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:58:14.850 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:58:14.851 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:58:14.852 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:58:14.854 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:58:14.855 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:58:14.856 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:58:14.857 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:58:14.858 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:58:14.859 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:58:14.859 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:58:14.859 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:58:14.860 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:58:14.860 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56791.13995
2026-01-22T04:58:14.860 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:58:14.860 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:58:14.860 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:58:14.875 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:58:14.875 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:58:23.885 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:58:33.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:58:43.906 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:58:53.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T04:59:03.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T04:59:13.936 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T04:59:13.955 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T04:59:04.805155
2026-01-22T04:59:13.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T04:59:04.805155
2026-01-22T04:59:13.955 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T04:59:13.955 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T04:59:13.955 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T04:59:13.955 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T02:59:13&start_after=2026-01-21T02:59:13&end_after=2026-01-22T02:59:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T04:59:14.122 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:59:14.123 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:59:14.124 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:59:14.126 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:59:14.127 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:59:14.128 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:59:14.129 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T04:59:14.130 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T04:59:14.131 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T04:59:14.131 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T04:59:14.131 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T04:59:14.131 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T04:59:14.131 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56731.868062
2026-01-22T04:59:14.131 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T04:59:14.131 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T04:59:14.132 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T04:59:14.132 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T04:59:14.132 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T04:59:23.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T04:59:33.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T04:59:43.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T04:59:53.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:00:03.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:00:13.189 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:00:13.190 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:00:05.005932
2026-01-22T05:00:13.237 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:00:05.005932
2026-01-22T05:00:13.238 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:00:13.238 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:00:13.238 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:00:13.238 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:00:13&start_after=2026-01-21T03:00:13&end_after=2026-01-22T03:00:13&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:00:13.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:00:13.355 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:00:13.357 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:00:13.358 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:00:13.360 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:00:13.360 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:00:13.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:00:13.362 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:00:13.364 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:00:13.364 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:00:13.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:00:13.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:00:13.364 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56672.635387
2026-01-22T05:00:13.364 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:00:13.364 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:00:13.364 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:00:13.385 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:00:13.385 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:00:22.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:00:32.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:00:42.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:00:52.431 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:01:02.448 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:01:12.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:01:12.484 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:01:05.212847
2026-01-22T05:01:12.484 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:01:05.212847
2026-01-22T05:01:12.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:01:12.485 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:01:12.485 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:01:12.486 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:01:12&start_after=2026-01-21T03:01:12&end_after=2026-01-22T03:01:12&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:01:12.606 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:01:12.607 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:01:12.611 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:01:12.615 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:01:12.618 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:01:12.620 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:01:12.624 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:01:12.626 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:01:12.631 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:01:12.631 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:01:12.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:01:12.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:01:12.631 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56613.368503
2026-01-22T05:01:12.631 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:01:12.631 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:01:12.631 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:01:12.633 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:01:12.633 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:01:21.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:01:31.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:01:41.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:01:51.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:02:01.695 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:02:11.705 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:02:11.720 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:02:05.412060
2026-01-22T05:02:11.720 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:02:05.412060
2026-01-22T05:02:11.720 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:02:11.720 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:02:11.721 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:02:11.721 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:02:11&start_after=2026-01-21T03:02:11&end_after=2026-01-22T03:02:11&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:02:11.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:02:11.840 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:02:11.842 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:02:11.843 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:02:11.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:02:11.845 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:02:11.847 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:02:11.848 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:02:11.849 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:02:11.849 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:02:11.849 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:02:11.849 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:02:11.849 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56554.150202
2026-01-22T05:02:11.849 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:02:11.849 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:02:11.849 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:02:11.850 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:02:11.850 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:02:20.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:02:30.870 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:02:40.881 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:02:50.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:03:00.900 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:03:10.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:03:10.930 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:03:05.610936
2026-01-22T05:03:10.930 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:03:05.610936
2026-01-22T05:03:10.930 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:03:10.930 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:03:10.931 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:03:10.931 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:03:10&start_after=2026-01-21T03:03:10&end_after=2026-01-22T03:03:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:03:11.045 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:03:11.046 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:03:11.047 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:03:11.049 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:03:11.050 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:03:11.051 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:03:11.052 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:03:11.053 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:03:11.054 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:03:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:03:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:03:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:03:11.054 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56494.945074
2026-01-22T05:03:11.054 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:03:11.054 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:03:11.055 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:03:11.055 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:03:11.055 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:03:20.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:03:30.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:03:40.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:03:50.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:04:00.103 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:04:10.113 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:04:10.114 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:04:05.812050
2026-01-22T05:04:10.114 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:04:05.812050
2026-01-22T05:04:10.114 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:04:10.114 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:04:10.114 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:04:10.114 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:04:10&start_after=2026-01-21T03:04:10&end_after=2026-01-22T03:04:10&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:04:10.264 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:04:10.265 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:04:10.266 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:04:10.268 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:04:10.269 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:04:10.270 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:04:10.271 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:04:10.272 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:04:10.274 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:04:10.274 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:04:10.274 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:04:10.274 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:04:10.274 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56435.72567
2026-01-22T05:04:10.274 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:04:10.274 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:04:10.274 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:04:10.275 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:04:10.275 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:04:19.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:04:29.295 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:04:39.304 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:04:49.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:04:59.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:05:09.333 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:05:09.352 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:05:06.011629
2026-01-22T05:05:09.352 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:05:06.011629
2026-01-22T05:05:09.352 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:05:09.352 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:05:09.353 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:05:09.353 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:05:09&start_after=2026-01-21T03:05:09&end_after=2026-01-22T03:05:09&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:05:09.466 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:05:09.467 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:05:09.468 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:05:09.470 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:05:09.471 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:05:09.472 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:05:09.473 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:05:09.474 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:05:09.475 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:05:09.475 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:05:09.475 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:05:09.476 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:05:09.476 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56376.523939
2026-01-22T05:05:09.476 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:05:09.476 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:05:09.476 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:05:09.476 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:05:09.476 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:05:18.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:05:28.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:05:38.505 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:05:48.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:05:58.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:06:08.539 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:06:08.541 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:06:06.214405
2026-01-22T05:06:08.541 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:06:06.214405
2026-01-22T05:06:08.542 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:06:08.542 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:06:08.542 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:06:08.543 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:06:08&start_after=2026-01-21T03:06:08&end_after=2026-01-22T03:06:08&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:06:08.661 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:06:08.662 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:06:08.664 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:06:08.666 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:06:08.669 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:06:08.670 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:06:08.672 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:06:08.674 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:06:08.676 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:06:08.676 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:06:08.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:06:08.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:06:08.677 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56317.322793
2026-01-22T05:06:08.677 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:06:08.677 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:06:08.677 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:06:08.678 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:06:08.678 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:06:17.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:06:27.707 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:06:37.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:06:47.737 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:06:57.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:07:07.765 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:07:07.783 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:07:06.411287
2026-01-22T05:07:07.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:07:06.411287
2026-01-22T05:07:07.783 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:07:07.783 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:07:07.783 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:07:07.783 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:07:07&start_after=2026-01-21T03:07:07&end_after=2026-01-22T03:07:07&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:07:07.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:07:07.927 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:07:07.929 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:07:07.930 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:07:07.931 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:07:07.932 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:07:07.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:07:07.934 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:07:07.936 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:07:07.936 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:07:07.936 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:07:07.936 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:07:07.936 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56258.063446
2026-01-22T05:07:07.936 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:07:07.936 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:07:07.936 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:07:07.937 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:07:07.937 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:07:16.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:07:26.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:07:36.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:07:46.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:07:56.988 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:08:06.998 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:08:06.999 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:07:06.411287
2026-01-22T05:08:06.999 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:07:06.411287
2026-01-22T05:08:06.999 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:08:06.999 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:08:06.999 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:08:06.999 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:08:06&start_after=2026-01-21T03:08:06&end_after=2026-01-22T03:08:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:08:07.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:08:07.111 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:08:07.113 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:08:07.114 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:08:07.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:08:07.116 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:08:07.118 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:08:07.119 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:08:07.120 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:08:07.120 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:08:07.120 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:08:07.120 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:08:07.120 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56198.879068
2026-01-22T05:08:07.120 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:08:07.120 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:08:07.121 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:08:07.121 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:08:07.121 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:08:16.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:08:26.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:08:36.150 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:08:46.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:08:56.171 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:09:06.181 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:09:06.203 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:08:06.612533
2026-01-22T05:09:06.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:08:06.612533
2026-01-22T05:09:06.203 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:09:06.203 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:09:06.203 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:09:06.203 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:09:06&start_after=2026-01-21T03:09:06&end_after=2026-01-22T03:09:06&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:09:06.320 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:09:06.321 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:09:06.323 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:09:06.324 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:09:06.325 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:09:06.326 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:09:06.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:09:06.328 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:09:06.330 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:09:06.330 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:09:06.330 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:09:06.330 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:09:06.330 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56139.66939
2026-01-22T05:09:06.330 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:09:06.330 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:09:06.330 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:09:06.331 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:09:06.331 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:09:15.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:09:25.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:09:35.361 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:09:45.372 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:09:55.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:10:05.393 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:10:05.394 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:09:06.818327
2026-01-22T05:10:05.394 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:09:06.818327
2026-01-22T05:10:05.394 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:10:05.394 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:10:05.394 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:10:05.394 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:10:05&start_after=2026-01-21T03:10:05&end_after=2026-01-22T03:10:05&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:10:05.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:10:05.520 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:10:05.522 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:10:05.523 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:10:05.525 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:10:05.525 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:10:05.527 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:10:05.528 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:10:05.529 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:10:05.529 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:10:05.529 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:10:05.529 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:10:05.530 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56080.469984
2026-01-22T05:10:05.530 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:10:05.530 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:10:05.530 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:10:05.530 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:10:05.530 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:10:14.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:10:24.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:10:34.561 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:10:44.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:10:54.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:11:04.592 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:11:04.610 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:10:07.020196
2026-01-22T05:11:04.610 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:10:07.020196
2026-01-22T05:11:04.610 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:11:04.610 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:11:04.610 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:11:04.610 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:11:04&start_after=2026-01-21T03:11:04&end_after=2026-01-22T03:11:04&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:11:04.727 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:11:04.728 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:11:04.729 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:11:04.731 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:11:04.732 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:11:04.733 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:11:04.734 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:11:04.735 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:11:04.736 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:11:04.736 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:11:04.736 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:11:04.737 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:11:04.737 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 56021.262939
2026-01-22T05:11:04.737 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:11:04.737 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:11:04.737 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:11:04.738 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:11:04.738 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:11:13.747 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:11:23.757 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:11:33.772 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:11:43.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:11:53.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:12:03.815 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:12:03.818 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = True and LCU permission timestamp = 2026-01-22T05:11:07.220663
2026-01-22T05:12:03.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] The LCU permission time was 2026-01-22T05:11:07.220663
2026-01-22T05:12:03.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU GIVES permission to observe
2026-01-22T05:12:03.818 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Fetching and converting schedule
2026-01-22T05:12:03.819 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] OCS Observation Manager : Fetching schedule for next 1 days
2026-01-22T05:12:03.819 [DEBUG] [Poll thread] [fetch_schedule.py] [run()] Request using data = ?&format=json&limit=500&state=PENDING&state=IN_PROGRESS&start_before=2026-01-23T03:12:03&start_after=2026-01-21T03:12:03&end_after=2026-01-22T03:12:03&telescope=1m0a&ordering=start and AuthHead = {'Authorization': 'Token 4996fb693b81ec6642502a5641e1643f74ae505e'}
2026-01-22T05:12:03.942 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:12:03.943 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:12:03.947 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:12:03.951 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:12:03.955 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:12:03.957 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:12:03.961 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_Spec
2026-01-22T05:12:03.963 [DEBUG] [Poll thread] [converter.py] [create_observations()] Doing config for Mookodi_IMG
2026-01-22T05:12:03.967 [DEBUG] [Poll thread] [fetch_schedule.py] [run_converter()] Conversion done
2026-01-22T05:12:03.968 [DEBUG] [Poll thread] [schedule_poller.py] [fetch_next()] Got the schedule with 8 configurations
2026-01-22T05:12:03.968 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Next configurations list is not empty
2026-01-22T05:12:03.968 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Scheduled time of next configuration: 2026-01-22T18:44:46Z
2026-01-22T05:12:03.968 [DEBUG] [Poll thread] [schedule_poller.py] [poll()] Seconds to next  configuration: 55962.031609
2026-01-22T05:12:03.968 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Shutting down telescope: Next observation is too far in the future
2026-01-22T05:12:03.968 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:12:03.968 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:12:03.969 [DEBUG] [Poll thread] [telescope.py] [telescope_is_closed()] Telescope state = 0
2026-01-22T05:12:03.970 [INFO] [Poll thread] [schedule_poller.py] [do_shutdown()] Nothing to do. Telescope is already closed
2026-01-22T05:12:12.983 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:12:22.997 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:12:33.007 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:12:43.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:12:53.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:13:03.038 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:13:03.059 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:12:07.418784
2026-01-22T05:13:03.059 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:13:03.059 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:13:03.059 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:13:12.068 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:13:22.077 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:13:32.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:13:42.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:13:52.107 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:14:02.117 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:14:02.118 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:13:07.619434
2026-01-22T05:14:02.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:14:02.118 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:14:02.118 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:14:11.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:14:21.137 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:14:31.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:14:41.158 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:14:51.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:15:01.178 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:15:01.179 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:14:07.824198
2026-01-22T05:15:01.179 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:15:01.179 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:15:01.179 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:15:10.189 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:15:20.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:15:30.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:15:40.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:15:50.229 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:16:00.239 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:16:00.259 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:15:08.027946
2026-01-22T05:16:00.259 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:16:00.259 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:16:00.259 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:16:09.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:16:19.278 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:16:29.288 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:16:39.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:16:49.308 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:16:59.321 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:16:59.324 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:16:08.229835
2026-01-22T05:16:59.324 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:16:59.324 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:16:59.325 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:17:08.338 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:17:18.354 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:17:28.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:17:38.385 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:17:48.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:17:58.412 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:17:58.431 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:17:08.445990
2026-01-22T05:17:58.431 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:17:58.431 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:17:58.431 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:18:07.440 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:18:17.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:18:27.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:18:37.472 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:18:47.482 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:18:57.493 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:18:57.494 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:18:08.648758
2026-01-22T05:18:57.494 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:18:57.494 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:18:57.494 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:19:06.503 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:19:16.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:19:26.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:19:36.535 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:19:46.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:19:56.556 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:19:56.557 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:19:08.850007
2026-01-22T05:19:56.557 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:19:56.557 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:19:56.557 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:20:05.566 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:20:15.576 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:20:25.587 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:20:35.597 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:20:45.608 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:20:55.618 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:20:55.636 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:20:09.051532
2026-01-22T05:20:55.636 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:20:55.636 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:20:55.636 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:21:04.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:21:14.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:21:24.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:21:34.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:21:44.685 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:21:54.698 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:21:54.701 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:21:09.252860
2026-01-22T05:21:54.701 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:21:54.701 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:21:54.702 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:22:03.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:22:13.730 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:22:23.746 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:22:33.762 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:22:43.777 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:22:53.790 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:22:53.809 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:22:09.455345
2026-01-22T05:22:53.809 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:22:53.809 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:22:53.809 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:23:02.817 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:23:12.828 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:23:22.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:23:32.849 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:23:42.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:23:52.869 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:23:52.870 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:23:09.657917
2026-01-22T05:23:52.870 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:23:52.870 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:23:52.870 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:24:01.880 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:24:11.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:24:21.900 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:24:31.910 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:24:41.920 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:24:51.930 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:24:51.952 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:24:09.863567
2026-01-22T05:24:51.952 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:24:51.952 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:24:51.952 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:25:00.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:25:10.972 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:25:20.982 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:25:30.993 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:25:41.003 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:25:51.013 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:25:51.028 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:25:10.068628
2026-01-22T05:25:51.028 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:25:51.028 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:25:51.028 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:26:00.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:26:10.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:26:20.057 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:26:30.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:26:40.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:26:50.099 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:26:50.102 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:26:10.270183
2026-01-22T05:26:50.102 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:26:50.102 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:26:50.102 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:26:59.114 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:27:09.128 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:27:19.142 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:27:29.155 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:27:39.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:27:49.175 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:27:49.193 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:27:10.476719
2026-01-22T05:27:49.193 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:27:49.193 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:27:49.193 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:27:58.203 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:28:08.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:28:18.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:28:28.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:28:38.243 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:28:48.254 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:28:48.255 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:28:10.679701
2026-01-22T05:28:48.255 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:28:48.255 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:28:48.255 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:28:57.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:29:07.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:29:17.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:29:27.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:29:37.306 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:29:47.316 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:29:47.336 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:29:10.880729
2026-01-22T05:29:47.365 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:29:47.365 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:29:47.365 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:29:56.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:30:06.384 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:30:16.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:30:26.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:30:36.416 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:30:46.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:30:46.450 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:30:11.083264
2026-01-22T05:30:46.450 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:30:46.450 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:30:46.450 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:30:55.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:31:05.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:31:15.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:31:25.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:31:35.524 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:31:45.539 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:31:45.540 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:31:11.291012
2026-01-22T05:31:45.540 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:31:45.540 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:31:45.540 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:31:54.549 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:32:04.560 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:32:14.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:32:24.581 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:32:34.591 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:32:44.602 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:32:44.622 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:32:11.493686
2026-01-22T05:32:44.622 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:32:44.622 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:32:44.622 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:32:53.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:33:03.642 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:33:13.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:33:23.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:33:33.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:33:43.683 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:33:43.684 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:33:11.711958
2026-01-22T05:33:43.684 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:33:43.684 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:33:43.684 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:33:52.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:34:02.703 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:34:12.713 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:34:22.724 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:34:32.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:34:42.744 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:34:42.765 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:34:11.923906
2026-01-22T05:34:42.765 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:34:42.765 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:34:42.765 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:34:51.778 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:35:01.793 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:35:11.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:35:21.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:35:31.833 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:35:41.847 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:35:41.850 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:35:12.126516
2026-01-22T05:35:41.850 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:35:41.851 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:35:41.851 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:35:50.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:36:00.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:36:10.881 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:36:20.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:36:30.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:36:40.911 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:36:40.912 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:36:12.330347
2026-01-22T05:36:40.912 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:36:40.912 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:36:40.912 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:36:49.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:36:59.931 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:37:09.941 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:37:19.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:37:29.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:37:39.971 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:37:39.990 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:37:12.530186
2026-01-22T05:37:39.990 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:37:39.990 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:37:39.990 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:37:49.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:37:59.010 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:38:09.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:38:19.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:38:29.041 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:38:39.055 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:38:39.078 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:38:12.734433
2026-01-22T05:38:39.078 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:38:39.078 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:38:39.078 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:38:48.092 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:38:58.106 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:39:08.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:39:18.132 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:39:28.144 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:39:38.155 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:39:38.172 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:39:12.934447
2026-01-22T05:39:38.172 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:39:38.172 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:39:38.172 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:39:47.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:39:57.191 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:40:07.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:40:17.210 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:40:27.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:40:37.231 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:40:37.234 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:40:13.135853
2026-01-22T05:40:37.234 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:40:37.234 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:40:37.234 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:40:46.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:40:56.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:41:06.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:41:16.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:41:26.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:41:36.296 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:41:36.317 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:41:13.341349
2026-01-22T05:41:36.317 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:41:36.317 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:41:36.317 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:41:45.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:41:55.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:42:05.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:42:15.365 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:42:25.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:42:35.396 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:42:35.398 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:42:13.543526
2026-01-22T05:42:35.399 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:42:35.399 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:42:35.399 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:42:44.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:42:54.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:43:04.437 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:43:14.447 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:43:24.458 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:43:34.468 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:43:34.485 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:43:13.743716
2026-01-22T05:43:34.485 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:43:34.485 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:43:34.485 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:43:43.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:43:53.505 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:44:03.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:44:13.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:44:23.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:44:33.546 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:44:33.562 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:44:13.948057
2026-01-22T05:44:33.562 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:44:33.562 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:44:33.562 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:44:42.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:44:52.582 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:45:02.592 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:45:12.606 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:45:22.622 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:45:32.635 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:45:32.637 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:45:14.149339
2026-01-22T05:45:32.637 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:45:32.637 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:45:32.638 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:45:41.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:45:51.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:46:01.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:46:11.694 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:46:21.705 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:46:31.715 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:46:31.735 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:46:14.353886
2026-01-22T05:46:31.735 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:46:31.735 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:46:31.735 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:46:40.744 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:46:50.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:47:00.764 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:47:10.774 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:47:20.785 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:47:30.795 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:47:30.814 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:47:14.555044
2026-01-22T05:47:30.814 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:47:30.814 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:47:30.814 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:47:39.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:47:49.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:47:59.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:48:09.859 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:48:19.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:48:29.890 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:48:29.893 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:48:14.754951
2026-01-22T05:48:29.893 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:48:29.893 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:48:29.893 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:48:38.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:48:48.920 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:48:58.934 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:49:08.946 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:49:18.956 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:49:28.966 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:49:28.988 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:49:14.955370
2026-01-22T05:49:28.988 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:49:28.988 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:49:28.988 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:49:37.998 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:49:48.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:49:58.019 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:50:08.029 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:50:18.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:50:28.049 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:50:28.050 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:50:15.160723
2026-01-22T05:50:28.050 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:50:28.050 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:50:28.050 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:50:37.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:50:47.070 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:50:57.085 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:51:07.099 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:51:17.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:51:27.128 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:51:27.150 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:51:15.377305
2026-01-22T05:51:27.150 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:51:27.151 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:51:27.151 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:51:36.163 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:51:46.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:51:56.187 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:52:06.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:52:16.207 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:52:26.217 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:52:26.234 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:52:15.577857
2026-01-22T05:52:26.235 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:52:26.235 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:52:26.235 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:52:35.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:52:45.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:52:55.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:53:05.274 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:53:15.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:53:25.297 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:53:25.320 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:53:15.781330
2026-01-22T05:53:25.320 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:53:25.320 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:53:25.320 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:53:34.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:53:44.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:53:54.364 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:54:04.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:54:14.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:54:24.409 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:54:24.430 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:54:15.982687
2026-01-22T05:54:24.430 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:54:24.430 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:54:24.430 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:54:33.439 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:54:43.450 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:54:53.460 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:55:03.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:55:13.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:55:23.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:55:23.493 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:55:16.186646
2026-01-22T05:55:23.493 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:55:23.493 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:55:23.493 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:55:32.502 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:55:42.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:55:52.526 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:56:02.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:56:12.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:56:22.571 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:56:22.588 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:56:16.338908
2026-01-22T05:56:22.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:56:22.588 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:56:22.588 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:56:31.602 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:56:41.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:56:51.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:57:01.639 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:57:11.650 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:57:21.660 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:57:21.661 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:57:16.479242
2026-01-22T05:57:21.661 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:57:21.662 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:57:21.662 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:57:30.671 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:57:40.681 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:57:50.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:58:00.706 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:58:10.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:58:20.737 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:58:20.739 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:58:16.620799
2026-01-22T05:58:20.740 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:58:20.740 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:58:20.740 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:58:29.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:58:39.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:58:49.785 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:58:59.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T05:59:09.808 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T05:59:19.818 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T05:59:19.838 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T05:59:16.760119
2026-01-22T05:59:19.838 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T05:59:19.838 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T05:59:19.838 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T05:59:28.848 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T05:59:38.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T05:59:48.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T05:59:58.880 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:00:08.894 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:00:18.908 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:00:18.911 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:00:16.901279
2026-01-22T06:00:18.911 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:00:18.912 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:00:18.912 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:00:27.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:00:37.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:00:47.953 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:00:57.968 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:01:07.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:01:17.989 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:01:18.007 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:01:17.040193
2026-01-22T06:01:18.007 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:01:18.007 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:01:18.007 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:01:27.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:01:37.027 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:01:47.038 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:01:57.050 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:02:07.065 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:02:17.081 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:02:17.083 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:01:17.040193
2026-01-22T06:02:17.083 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:02:17.084 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:02:17.084 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:02:26.096 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:02:36.111 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:02:46.126 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:02:56.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:03:06.149 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:03:16.159 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:03:16.160 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:02:17.180550
2026-01-22T06:03:16.160 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:03:16.160 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:03:16.160 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:03:25.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:03:35.180 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:03:45.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:03:55.208 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:04:05.223 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:04:15.238 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:04:15.260 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:03:17.323650
2026-01-22T06:04:15.261 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:04:15.261 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:04:15.261 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:04:24.275 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:04:34.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:04:44.302 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:04:54.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:05:04.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:05:14.334 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:05:14.336 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:04:17.468549
2026-01-22T06:05:14.337 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:05:14.337 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:05:14.337 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:05:23.350 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:05:33.366 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:05:43.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:05:53.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:06:03.412 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:06:13.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:06:13.447 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:05:17.611131
2026-01-22T06:06:13.447 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:06:13.447 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:06:13.447 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:06:22.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:06:32.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:06:42.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:06:52.494 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:07:02.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:07:12.522 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:07:12.525 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:06:17.751067
2026-01-22T06:07:12.525 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:07:12.525 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:07:12.525 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:07:21.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:07:31.554 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:07:41.568 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:07:51.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:08:01.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:08:11.602 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:08:11.620 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:07:17.892879
2026-01-22T06:08:11.621 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:08:11.621 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:08:11.621 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:08:20.633 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:08:30.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:08:40.664 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:08:50.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:09:00.692 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:09:10.705 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:09:10.719 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:08:18.032109
2026-01-22T06:09:10.719 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:09:10.719 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:09:10.719 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:09:19.728 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:09:29.740 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:09:39.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:09:49.771 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:09:59.787 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:10:09.801 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:10:09.803 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:09:18.171375
2026-01-22T06:10:09.803 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:10:09.803 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:10:09.804 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:10:18.817 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:10:28.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:10:38.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:10:48.858 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:10:58.874 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:11:08.889 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:11:08.910 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:10:18.309019
2026-01-22T06:11:08.910 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:11:08.910 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:11:08.911 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:11:17.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:11:27.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:11:37.950 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:11:47.965 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:11:57.981 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:12:07.995 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:12:07.998 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:11:18.445968
2026-01-22T06:12:07.998 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:12:07.998 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:12:07.999 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:12:17.012 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:12:27.024 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:12:37.038 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:12:47.053 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:12:57.068 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:13:07.081 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:13:07.100 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:12:18.598604
2026-01-22T06:13:07.100 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:13:07.101 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:13:07.101 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:13:16.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:13:26.127 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:13:36.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:13:46.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:13:56.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:14:06.182 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:14:06.202 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:13:18.737376
2026-01-22T06:14:06.202 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:14:06.202 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:14:06.202 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:14:15.216 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:14:25.229 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:14:35.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:14:45.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:14:55.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:15:05.283 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:15:05.285 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:14:18.877303
2026-01-22T06:15:05.285 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:15:05.285 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:15:05.286 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:15:14.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:15:24.315 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:15:34.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:15:44.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:15:54.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:16:04.375 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:16:04.397 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:15:19.015126
2026-01-22T06:16:04.397 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:16:04.397 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:16:04.397 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:16:13.410 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:16:23.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:16:33.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:16:43.456 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:16:53.469 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:17:03.483 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:17:03.485 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:16:19.155674
2026-01-22T06:17:03.486 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:17:03.486 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:17:03.486 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:17:12.501 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:17:22.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:17:32.529 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:17:42.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:17:52.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:18:02.571 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:18:02.595 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:17:19.297340
2026-01-22T06:18:02.596 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:18:02.596 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:18:02.596 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:18:11.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:18:21.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:18:31.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:18:41.655 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:18:51.670 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:19:01.685 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:19:01.706 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:18:19.437733
2026-01-22T06:19:01.706 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:19:01.706 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:19:01.707 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:19:10.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:19:20.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:19:30.749 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:19:40.763 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:19:50.776 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:20:00.789 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:20:00.791 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:19:19.594177
2026-01-22T06:20:00.791 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:20:00.791 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:20:00.792 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:20:09.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:20:19.820 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:20:29.834 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:20:39.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:20:49.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:20:59.874 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:20:59.892 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:20:19.734369
2026-01-22T06:20:59.892 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:20:59.892 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:20:59.892 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:21:08.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:21:18.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:21:28.931 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:21:38.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:21:48.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:21:58.975 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:21:58.977 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:21:19.872683
2026-01-22T06:21:58.977 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:21:58.977 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:21:58.978 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:22:07.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:22:18.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:22:28.018 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:22:38.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:22:48.045 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:22:58.060 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:22:58.078 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:22:20.014303
2026-01-22T06:22:58.078 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:22:58.078 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:22:58.078 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:23:07.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:23:17.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:23:27.120 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:23:37.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:23:47.148 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:23:57.162 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:23:57.165 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:23:20.156229
2026-01-22T06:23:57.165 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:23:57.165 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:23:57.165 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:24:06.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:24:16.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:24:26.207 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:24:36.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:24:46.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:24:56.252 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:24:56.254 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:24:20.297893
2026-01-22T06:24:56.255 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:24:56.255 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:24:56.255 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:25:05.266 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:25:15.280 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:25:25.296 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:25:35.311 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:25:45.327 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:25:55.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:25:55.362 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:25:20.448261
2026-01-22T06:25:55.362 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:25:55.363 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:25:55.363 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:26:04.377 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:26:14.393 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:26:24.409 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:26:34.425 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:26:44.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:26:54.457 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:26:54.459 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:26:20.589243
2026-01-22T06:26:54.459 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:26:54.459 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:26:54.460 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:27:03.473 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:27:13.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:27:23.504 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:27:33.519 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:27:43.533 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:27:53.549 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:27:53.571 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:27:20.730528
2026-01-22T06:27:53.571 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:27:53.571 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:27:53.571 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:28:02.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:28:12.599 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:28:22.616 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:28:32.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:28:42.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:28:52.660 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:28:52.662 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:28:20.872586
2026-01-22T06:28:52.662 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:28:52.662 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:28:52.662 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:29:01.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:29:11.690 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:29:21.705 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:29:31.720 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:29:41.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:29:51.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:29:51.769 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:29:21.014664
2026-01-22T06:29:51.769 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:29:51.769 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:29:51.769 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:30:00.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:30:10.796 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:30:20.811 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:30:30.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:30:40.841 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:30:50.856 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:30:50.858 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:30:21.153766
2026-01-22T06:30:50.858 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:30:50.859 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:30:50.859 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:30:59.873 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:31:09.887 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:31:19.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:31:29.915 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:31:39.928 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:31:49.944 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:31:49.946 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:31:21.293682
2026-01-22T06:31:49.946 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:31:49.946 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:31:49.946 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:31:58.959 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:32:08.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:32:18.990 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:32:29.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:32:39.016 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:32:49.029 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:32:49.046 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:32:21.434474
2026-01-22T06:32:49.046 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:32:49.047 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:32:49.047 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:32:58.060 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:33:08.072 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:33:18.087 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:33:28.101 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:33:38.115 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:33:48.129 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:33:48.130 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:33:21.577733
2026-01-22T06:33:48.130 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:33:48.130 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:33:48.130 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:33:57.144 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:34:07.157 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:34:17.170 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:34:27.184 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:34:37.196 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:34:47.210 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:34:47.227 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:34:21.723814
2026-01-22T06:34:47.228 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:34:47.228 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:34:47.228 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:34:56.242 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:35:06.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:35:16.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:35:26.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:35:36.298 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:35:46.314 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:35:46.316 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:35:21.872932
2026-01-22T06:35:46.317 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:35:46.317 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:35:46.317 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:35:55.332 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:36:05.346 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:36:15.360 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:36:25.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:36:35.389 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:36:45.403 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:36:45.405 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:36:22.013746
2026-01-22T06:36:45.405 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:36:45.405 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:36:45.406 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:36:54.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:37:04.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:37:14.448 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:37:24.462 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:37:34.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:37:44.492 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:37:44.515 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:37:22.154885
2026-01-22T06:37:44.515 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:37:44.516 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:37:44.516 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:37:53.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:38:03.545 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:38:13.558 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:38:23.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:38:33.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:38:43.604 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:38:43.606 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:38:22.296246
2026-01-22T06:38:43.606 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:38:43.606 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:38:43.606 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:38:52.619 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:39:02.635 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:39:12.650 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:39:22.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:39:32.680 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:39:42.694 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:39:42.716 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:39:22.434452
2026-01-22T06:39:42.744 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:39:42.744 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:39:42.744 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:39:51.758 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:40:01.773 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:40:11.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:40:21.803 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:40:31.819 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:40:41.834 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:40:41.836 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:40:22.573136
2026-01-22T06:40:41.836 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:40:41.836 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:40:41.836 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:40:50.850 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:41:00.866 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:41:10.882 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:41:20.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:41:30.911 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:41:40.925 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:41:40.947 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:41:22.713089
2026-01-22T06:41:40.947 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:41:40.947 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:41:40.947 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:41:49.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:41:59.975 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:42:09.989 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:42:20.005 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:42:30.020 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:42:40.034 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:42:40.053 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:42:22.853498
2026-01-22T06:42:40.053 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:42:40.053 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:42:40.053 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:42:49.066 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:42:59.080 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:43:09.094 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:43:19.109 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:43:29.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:43:39.137 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:43:39.139 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:43:22.996748
2026-01-22T06:43:39.140 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:43:39.140 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:43:39.140 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:43:48.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:43:58.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:44:08.181 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:44:18.193 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:44:28.207 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:44:38.221 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:44:38.240 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:44:23.138137
2026-01-22T06:44:38.240 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:44:38.240 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:44:38.240 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:44:47.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:44:57.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:45:07.284 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:45:17.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:45:27.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:45:37.330 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:45:37.354 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:45:23.278354
2026-01-22T06:45:37.354 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:45:37.403 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:45:37.404 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:45:46.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:45:56.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:46:06.448 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:46:16.464 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:46:26.478 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:46:36.493 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:46:36.513 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:46:23.417489
2026-01-22T06:46:36.514 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:46:36.514 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:46:36.514 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:46:45.528 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:46:55.542 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:47:05.558 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:47:15.573 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:47:25.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:47:35.605 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:47:35.607 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:47:23.557159
2026-01-22T06:47:35.608 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:47:35.608 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:47:35.608 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:47:44.621 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:47:54.637 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:48:04.652 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:48:14.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:48:24.682 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:48:34.697 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:48:34.720 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:48:23.695594
2026-01-22T06:48:34.721 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:48:34.721 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:48:34.721 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:48:43.735 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:48:53.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:49:03.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:49:13.780 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:49:23.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:49:33.809 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:49:33.828 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:49:23.833557
2026-01-22T06:49:33.828 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:49:33.828 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:49:33.828 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:49:42.842 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:49:52.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:50:02.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:50:12.886 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:50:22.900 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:50:32.912 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:50:32.914 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:50:23.972712
2026-01-22T06:50:32.914 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:50:32.915 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:50:32.915 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:50:41.929 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:50:51.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:51:01.957 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:51:11.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:51:21.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:51:31.999 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:51:32.022 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:51:24.113383
2026-01-22T06:51:32.022 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:51:32.022 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:51:32.022 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:51:41.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:51:51.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:52:01.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:52:11.076 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:52:21.091 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:52:31.104 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:52:31.106 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:52:24.253653
2026-01-22T06:52:31.106 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:52:31.106 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:52:31.106 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:52:40.117 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:52:50.132 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:53:00.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:53:10.161 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:53:20.176 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:53:30.190 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:53:30.210 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:53:24.394294
2026-01-22T06:53:30.210 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:53:30.210 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:53:30.210 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:53:39.222 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:53:49.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:53:59.250 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:54:09.264 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:54:19.279 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:54:29.293 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:54:29.294 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:54:24.533272
2026-01-22T06:54:29.294 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:54:29.294 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:54:29.294 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:54:38.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:54:48.323 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:54:58.338 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:55:08.353 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:55:18.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:55:28.384 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:55:28.386 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:55:24.673427
2026-01-22T06:55:28.387 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:55:28.387 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:55:28.387 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:55:37.401 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:55:47.415 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:55:57.430 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:56:07.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:56:17.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:56:27.477 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:56:27.497 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:56:24.813859
2026-01-22T06:56:27.497 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:56:27.497 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:56:27.497 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:56:36.510 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:56:46.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:56:56.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:57:06.554 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:57:16.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:57:26.585 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:57:26.587 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:57:24.953544
2026-01-22T06:57:26.588 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:57:26.588 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:57:26.588 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:57:35.601 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:57:45.616 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:57:55.631 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:58:05.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:58:15.662 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:58:25.676 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:58:25.697 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:58:25.106435
2026-01-22T06:58:25.698 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:58:25.698 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:58:25.698 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:58:34.709 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:58:44.724 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:58:54.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T06:59:04.755 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T06:59:14.770 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T06:59:24.786 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T06:59:24.788 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:58:25.106435
2026-01-22T06:59:24.788 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T06:59:24.789 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T06:59:24.789 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T06:59:33.801 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T06:59:43.816 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T06:59:53.831 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:00:03.847 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:00:13.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:00:23.876 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:00:23.896 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T06:59:25.247839
2026-01-22T07:00:23.896 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:00:23.896 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:00:23.896 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:00:32.909 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:00:42.924 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:00:52.939 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:01:02.954 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:01:12.969 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:01:22.983 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:01:22.985 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:00:25.387368
2026-01-22T07:01:22.985 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:01:22.986 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:01:22.986 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:01:32.000 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:01:42.013 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:01:52.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:02:02.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:02:12.049 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:02:22.061 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:02:22.079 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:01:25.527379
2026-01-22T07:02:22.079 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:02:22.079 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:02:22.079 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:02:31.093 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:02:41.108 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:02:51.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:03:01.136 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:03:11.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:03:21.165 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:03:21.168 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:02:25.669604
2026-01-22T07:03:21.168 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:03:21.168 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:03:21.168 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:03:30.178 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:03:40.192 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:03:50.207 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:04:00.221 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:04:10.236 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:04:20.251 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:04:20.253 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:03:25.812420
2026-01-22T07:04:20.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:04:20.254 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:04:20.254 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:04:29.267 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:04:39.281 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:04:49.297 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:04:59.312 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:05:09.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:05:19.342 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:05:19.360 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:04:25.950744
2026-01-22T07:05:19.361 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:05:19.361 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:05:19.361 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:05:28.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:05:38.389 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:05:48.405 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:05:58.419 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:06:08.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:06:18.449 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:06:18.452 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:05:26.092231
2026-01-22T07:06:18.452 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:06:18.452 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:06:18.452 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:06:27.466 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:06:37.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:06:47.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:06:57.511 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:07:07.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:07:17.540 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:07:17.541 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:06:26.232685
2026-01-22T07:07:17.541 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:07:17.541 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:07:17.541 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:07:26.556 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:07:36.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:07:46.586 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:07:56.601 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:08:06.616 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:08:16.632 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:08:16.649 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:07:26.372900
2026-01-22T07:08:16.649 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:08:16.649 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:08:16.649 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:08:25.663 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:08:35.678 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:08:45.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:08:55.708 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:09:05.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:09:15.736 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:09:15.738 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:08:26.513383
2026-01-22T07:09:15.738 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:09:15.738 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:09:15.738 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:09:24.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:09:34.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:09:44.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:09:54.798 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:10:04.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:10:14.827 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:10:14.847 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:09:26.651648
2026-01-22T07:10:14.847 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:10:14.848 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:10:14.848 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:10:23.861 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:10:33.877 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:10:43.892 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:10:53.905 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:11:03.919 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:11:13.934 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:11:13.936 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:10:26.790589
2026-01-22T07:11:13.983 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:11:13.983 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:11:13.983 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:11:22.997 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:11:33.011 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:11:43.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:11:53.039 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:12:03.052 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:12:13.067 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:12:13.090 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:11:26.928940
2026-01-22T07:12:13.090 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:12:13.091 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:12:13.091 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:12:22.101 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:12:32.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:12:42.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:12:52.146 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:13:02.159 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:13:12.173 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:13:12.191 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:12:27.066368
2026-01-22T07:13:12.192 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:13:12.192 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:13:12.192 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:13:21.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:13:31.218 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:13:41.233 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:13:51.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:14:01.263 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:14:11.278 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:14:11.295 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:13:27.205998
2026-01-22T07:14:11.295 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:14:11.295 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:14:11.295 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:14:20.309 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:14:30.324 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:14:40.340 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:14:50.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:15:00.369 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:15:10.385 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:15:10.406 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:14:27.346758
2026-01-22T07:15:10.407 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:15:10.407 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:15:10.407 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:15:19.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:15:29.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:15:39.452 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:15:49.468 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:15:59.484 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:16:09.497 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:16:09.499 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:15:27.486652
2026-01-22T07:16:09.507 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:16:09.507 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:16:09.507 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:16:18.520 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:16:28.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:16:38.550 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:16:48.564 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:16:58.578 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:17:08.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:17:08.616 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:16:27.627254
2026-01-22T07:17:08.616 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:17:08.616 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:17:08.616 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:17:17.630 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:17:27.644 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:17:37.660 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:17:47.676 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:17:57.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:18:07.705 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:18:07.708 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:17:27.768675
2026-01-22T07:18:07.708 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:18:07.708 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:18:07.708 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:18:16.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:18:26.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:18:36.751 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:18:46.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:18:56.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:19:06.796 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:19:06.799 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:18:27.909001
2026-01-22T07:19:06.799 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:19:06.799 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:19:06.799 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:19:15.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:19:25.826 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:19:35.841 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:19:45.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:19:55.871 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:20:05.887 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:20:05.908 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:19:28.049696
2026-01-22T07:20:05.908 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:20:05.909 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:20:05.909 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:20:14.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:20:24.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:20:34.949 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:20:44.963 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:20:54.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:21:04.992 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:21:04.995 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:20:28.191261
2026-01-22T07:21:04.995 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:21:04.995 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:21:04.995 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:21:14.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:21:24.022 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:21:34.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:21:44.047 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:21:54.062 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:22:04.077 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:22:04.096 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:21:28.342508
2026-01-22T07:22:04.096 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:22:04.096 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:22:04.097 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:22:13.109 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:22:23.123 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:22:33.138 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:22:43.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:22:53.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:23:03.184 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:23:03.186 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:22:28.483972
2026-01-22T07:23:03.187 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:23:03.187 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:23:03.187 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:23:12.200 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:23:22.214 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:23:32.230 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:23:42.245 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:23:52.259 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:24:02.275 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:24:02.292 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:23:28.623286
2026-01-22T07:24:02.292 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:24:02.292 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:24:02.292 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:24:11.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:24:21.321 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:24:31.337 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:24:41.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:24:51.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:25:01.382 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:25:01.384 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:24:28.762871
2026-01-22T07:25:01.385 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:25:01.385 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:25:01.385 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:25:10.398 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:25:20.414 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:25:30.429 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:25:40.445 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:25:50.461 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:26:00.476 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:26:00.478 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:25:28.902828
2026-01-22T07:26:00.478 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:26:00.479 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:26:00.479 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:26:09.491 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:26:19.507 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:26:29.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:26:39.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:26:49.554 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:26:59.570 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:26:59.588 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:26:29.044297
2026-01-22T07:26:59.589 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:26:59.589 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:26:59.589 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:27:08.603 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:27:18.617 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:27:28.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:27:38.649 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:27:48.665 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:27:58.681 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:27:58.683 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:27:29.186691
2026-01-22T07:27:58.730 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:27:58.730 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:27:58.730 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:28:07.744 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:28:17.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:28:27.776 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:28:37.790 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:28:47.806 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:28:57.823 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:28:57.843 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:28:29.328598
2026-01-22T07:28:57.844 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:28:57.844 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:28:57.844 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:29:06.854 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:29:16.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:29:26.885 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:29:36.898 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:29:46.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:29:56.927 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:29:56.948 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:29:29.471001
2026-01-22T07:29:56.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:29:56.948 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:29:56.948 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:30:05.961 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:30:15.974 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:30:25.989 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:30:36.004 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:30:46.019 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:30:56.033 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:30:56.036 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:30:29.608528
2026-01-22T07:30:56.036 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:30:56.036 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:30:56.036 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:31:05.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:31:15.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:31:25.075 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:31:35.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:31:45.104 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:31:55.119 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:31:55.141 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:31:29.748263
2026-01-22T07:31:55.141 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:31:55.141 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:31:55.141 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:32:04.151 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:32:14.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:32:24.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:32:34.194 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:32:44.209 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:32:54.224 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:32:54.227 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:32:29.887489
2026-01-22T07:32:54.227 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:32:54.227 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:32:54.227 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:33:03.240 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:33:13.256 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:33:23.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:33:33.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:33:43.300 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:33:53.315 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:33:53.338 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:33:30.026769
2026-01-22T07:33:53.338 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:33:53.339 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:33:53.339 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:34:02.351 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:34:12.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:34:22.382 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:34:32.397 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:34:42.413 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:34:52.428 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:34:52.449 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:34:30.169062
2026-01-22T07:34:52.449 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:34:52.450 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:34:52.450 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:35:01.463 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:35:11.479 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:35:21.495 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:35:31.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:35:41.521 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:35:51.536 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:35:51.538 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:35:30.307895
2026-01-22T07:35:51.538 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:35:51.538 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:35:51.538 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:36:00.557 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:36:10.571 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:36:20.588 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:36:30.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:36:40.620 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:36:50.635 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:36:50.659 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:36:30.449429
2026-01-22T07:36:50.659 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:36:50.659 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:36:50.659 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:36:59.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:37:09.688 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:37:19.704 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:37:29.719 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:37:39.734 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:37:49.750 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:37:49.753 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:37:30.589536
2026-01-22T07:37:49.753 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:37:49.753 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:37:49.753 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:37:58.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:38:08.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:38:18.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:38:28.812 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:38:38.827 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:38:48.842 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:38:48.866 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:38:30.728750
2026-01-22T07:38:48.867 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:38:48.867 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:38:48.867 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:38:57.881 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:39:07.895 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:39:17.910 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:39:27.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:39:37.939 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:39:47.953 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:39:47.974 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:39:30.877544
2026-01-22T07:39:47.975 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:39:47.975 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:39:47.975 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:39:56.988 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:40:07.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:40:17.017 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:40:27.032 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:40:37.046 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:40:47.059 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:40:47.085 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:40:31.018479
2026-01-22T07:40:47.085 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:40:47.085 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:40:47.085 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:40:56.095 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:41:06.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:41:16.124 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:41:26.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:41:36.153 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:41:46.167 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:41:46.185 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:41:31.156519
2026-01-22T07:41:46.185 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:41:46.185 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:41:46.185 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:41:55.199 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:42:05.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:42:15.227 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:42:25.241 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:42:35.255 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:42:45.270 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:42:45.272 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:42:31.295811
2026-01-22T07:42:45.272 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:42:45.273 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:42:45.273 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:42:54.286 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:43:04.301 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:43:14.316 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:43:24.330 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:43:34.345 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:43:44.359 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:43:44.377 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:43:31.434739
2026-01-22T07:43:44.377 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:43:44.377 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:43:44.377 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:43:53.391 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:44:03.406 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:44:13.421 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:44:23.436 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:44:33.451 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:44:43.466 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:44:43.468 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:44:31.577179
2026-01-22T07:44:43.468 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:44:43.469 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:44:43.469 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:44:52.481 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:45:02.496 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:45:12.511 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:45:22.525 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:45:32.540 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:45:42.553 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:45:42.574 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:45:31.743673
2026-01-22T07:45:42.574 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:45:42.574 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:45:42.574 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:45:51.589 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:46:01.604 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:46:11.618 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:46:21.634 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:46:31.648 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:46:41.664 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:46:41.683 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:46:31.883550
2026-01-22T07:46:41.683 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:46:41.683 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:46:41.683 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:46:50.697 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:47:00.711 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:47:10.724 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:47:20.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:47:30.754 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:47:40.768 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:47:40.771 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:47:32.023853
2026-01-22T07:47:40.771 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:47:40.772 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:47:40.772 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:47:49.785 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:47:59.800 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:48:09.814 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:48:19.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:48:29.844 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:48:39.859 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:48:39.880 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:48:32.165088
2026-01-22T07:48:39.880 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:48:39.880 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:48:39.881 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:48:48.893 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:48:58.907 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:49:08.921 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:49:18.936 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:49:28.951 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:49:38.964 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:49:38.967 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:49:32.304307
2026-01-22T07:49:38.967 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:49:38.968 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:49:38.968 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:49:47.980 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:49:57.995 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:50:08.008 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:50:18.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:50:28.037 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:50:38.050 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:50:38.071 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:50:32.443781
2026-01-22T07:50:38.071 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:50:38.071 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:50:38.071 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:50:47.084 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:50:57.098 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:51:07.113 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:51:17.128 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:51:27.142 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:51:37.156 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:51:37.158 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:51:32.584172
2026-01-22T07:51:37.158 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:51:37.159 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:51:37.159 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:51:46.172 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:51:56.185 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:52:06.200 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:52:16.213 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:52:26.227 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:52:36.241 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:52:36.263 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:52:32.724340
2026-01-22T07:52:36.263 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:52:36.263 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:52:36.264 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:52:45.277 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:52:55.293 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:53:05.307 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:53:15.322 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:53:25.336 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:53:35.350 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:53:35.352 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:53:32.864476
2026-01-22T07:53:35.353 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:53:35.353 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:53:35.353 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:53:44.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:53:54.380 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:54:04.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:54:14.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:54:24.424 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:54:34.440 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:54:34.461 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:54:33.004703
2026-01-22T07:54:34.462 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:54:34.462 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:54:34.462 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:54:43.475 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:54:53.491 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:55:03.506 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:55:13.522 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:55:23.536 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:55:33.550 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:55:33.570 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:55:33.145276
2026-01-22T07:55:33.571 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:55:33.571 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:55:33.571 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:55:42.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:55:52.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:56:02.614 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:56:12.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:56:22.645 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:56:32.660 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:56:32.663 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:55:33.145276
2026-01-22T07:56:32.664 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:56:32.664 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:56:32.664 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:56:41.677 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:56:51.693 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:57:01.707 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:57:11.723 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:57:21.738 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:57:31.752 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:57:31.774 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:56:33.286904
2026-01-22T07:57:31.774 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:57:31.774 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:57:31.774 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:57:40.788 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:57:50.802 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:58:00.817 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:58:10.832 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:58:20.846 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:58:30.860 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:58:30.862 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:57:33.429782
2026-01-22T07:58:30.870 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:58:30.870 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:58:30.870 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:58:39.884 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:58:49.899 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:58:59.912 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T07:59:09.926 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T07:59:19.940 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T07:59:29.954 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T07:59:29.957 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:58:33.570689
2026-01-22T07:59:29.957 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T07:59:29.957 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T07:59:29.957 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T07:59:38.971 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T07:59:48.986 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T07:59:59.002 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:00:09.012 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:00:19.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:00:29.033 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:00:29.051 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T07:59:33.710848
2026-01-22T08:00:29.051 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:00:29.051 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:00:29.051 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:00:38.061 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:00:48.073 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:00:58.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:01:08.101 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:01:18.116 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:01:28.130 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:01:28.152 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:00:33.861038
2026-01-22T08:01:28.152 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:01:28.152 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:01:28.152 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:01:37.165 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:01:47.179 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:01:57.192 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:02:07.205 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:02:17.220 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:02:27.233 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:02:27.256 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:01:34.014172
2026-01-22T08:02:27.256 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:02:27.256 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:02:27.256 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:02:36.268 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:02:46.283 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:02:56.298 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:03:06.313 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:03:16.326 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:03:26.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:03:26.360 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:02:34.168874
2026-01-22T08:03:26.360 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:03:26.360 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:03:26.360 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:03:35.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:03:45.388 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:03:55.404 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:04:05.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:04:15.433 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:04:25.448 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:04:25.469 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:03:34.307504
2026-01-22T08:04:25.469 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:04:25.469 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:04:25.469 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:04:34.483 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:04:44.499 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:04:54.514 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:05:04.530 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:05:14.546 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:05:24.561 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:05:24.583 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:04:34.448812
2026-01-22T08:05:24.583 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:05:24.583 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:05:24.584 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:05:33.597 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:05:43.611 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:05:53.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:06:03.641 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:06:13.657 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:06:23.671 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:06:23.693 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:05:34.587203
2026-01-22T08:06:23.693 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:06:23.693 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:06:23.693 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:06:32.707 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:06:42.722 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:06:52.737 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:07:02.752 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:07:12.766 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:07:22.782 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:07:22.803 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:06:34.729185
2026-01-22T08:07:22.803 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:07:22.803 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:07:22.803 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:07:31.816 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:07:41.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:07:51.843 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:08:01.856 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:08:11.872 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:08:21.888 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:08:21.909 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:07:34.866647
2026-01-22T08:08:21.909 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:08:21.909 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:08:21.909 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:08:30.923 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:08:40.938 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:08:50.954 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:09:00.969 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:09:10.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:09:21.000 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:09:21.019 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:08:35.007357
2026-01-22T08:09:21.019 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:09:21.019 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:09:21.019 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:09:30.030 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:09:40.044 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:09:50.058 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:10:00.074 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:10:10.088 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:10:20.103 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:10:20.126 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:09:35.148461
2026-01-22T08:10:20.127 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:10:20.127 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:10:20.127 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:10:29.140 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:10:39.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:10:49.168 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:10:59.182 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:11:09.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:11:19.211 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:11:19.230 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:10:35.288981
2026-01-22T08:11:19.230 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:11:19.230 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:11:19.230 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:11:28.244 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:11:38.258 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:11:48.273 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:11:58.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:12:08.303 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:12:18.317 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:12:18.341 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:11:35.429986
2026-01-22T08:12:18.341 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:12:18.341 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:12:18.341 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:12:27.355 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:12:37.370 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:12:47.386 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:12:57.402 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:13:07.417 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:13:17.432 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:13:17.435 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:12:35.568808
2026-01-22T08:13:17.435 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:13:17.435 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:13:17.435 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:13:26.449 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:13:36.465 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:13:46.480 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:13:56.496 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:14:06.512 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:14:16.527 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:14:16.549 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:13:35.707885
2026-01-22T08:14:16.550 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:14:16.550 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:14:16.550 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:14:25.563 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:14:35.579 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:14:45.595 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:14:55.610 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:15:05.626 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:15:15.641 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:15:15.656 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:14:35.847634
2026-01-22T08:15:15.656 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:15:15.656 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:15:15.656 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:15:24.668 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:15:34.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:15:44.700 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:15:54.716 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:16:04.732 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:16:14.747 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:16:14.765 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:15:35.989883
2026-01-22T08:16:14.766 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:16:14.766 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:16:14.766 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:16:23.779 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:16:33.795 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:16:43.810 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:16:53.825 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:17:03.841 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:17:13.856 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:17:13.875 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:16:36.130781
2026-01-22T08:17:13.875 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:17:13.875 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:17:13.875 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:17:22.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:17:32.901 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:17:42.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:17:52.930 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:18:02.943 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:18:12.958 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:18:12.980 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:17:36.270235
2026-01-22T08:18:12.981 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:18:12.981 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:18:12.981 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:18:21.994 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:18:32.009 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:18:42.023 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:18:52.034 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:19:02.048 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:19:12.062 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:19:12.084 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:18:36.410276
2026-01-22T08:19:12.084 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:19:12.084 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:19:12.084 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:19:21.097 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:19:31.110 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:19:41.125 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:19:51.139 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:20:01.154 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:20:11.169 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:20:11.191 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:19:36.549188
2026-01-22T08:20:11.191 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:20:11.192 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:20:11.192 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:20:20.204 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:20:30.219 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:20:40.234 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:20:50.248 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:21:00.262 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:21:10.277 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:21:10.301 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:20:36.692584
2026-01-22T08:21:10.301 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:21:10.301 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:21:10.301 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:21:19.314 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:21:29.329 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:21:39.343 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:21:49.358 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:21:59.374 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:22:09.389 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:22:09.412 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:21:36.841399
2026-01-22T08:22:09.412 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:22:09.412 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:22:09.412 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:22:18.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:22:28.443 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:22:38.458 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:22:48.473 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:22:58.489 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:23:08.504 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:23:08.524 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:22:36.981336
2026-01-22T08:23:08.524 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:23:08.524 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:23:08.524 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:23:17.539 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:23:27.554 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:23:37.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:23:47.585 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:23:57.600 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:24:07.615 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:24:07.639 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:23:37.121214
2026-01-22T08:24:07.640 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:24:07.640 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:24:07.640 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:24:16.653 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:24:26.667 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:24:36.684 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:24:46.699 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:24:56.715 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:25:06.730 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:25:06.753 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:24:37.264374
2026-01-22T08:25:06.754 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:25:06.754 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:25:06.754 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:25:15.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:25:25.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:25:35.799 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:25:45.813 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:25:55.829 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:26:05.844 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:26:05.846 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:25:37.412590
2026-01-22T08:26:05.846 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:26:05.846 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:26:05.847 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:26:14.860 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:26:24.875 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:26:34.890 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:26:44.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:26:54.918 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:27:04.933 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:27:04.955 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:26:37.554072
2026-01-22T08:27:04.955 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:27:04.955 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:27:04.955 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:27:13.967 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:27:23.980 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:27:33.995 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:27:44.011 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:27:54.025 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:28:04.039 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:28:04.057 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:27:37.693173
2026-01-22T08:28:04.057 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:28:04.057 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:28:04.057 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:28:13.070 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:28:23.086 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:28:33.100 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:28:43.115 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:28:53.131 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:29:03.145 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:29:03.167 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:28:37.832511
2026-01-22T08:29:03.168 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:29:03.168 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:29:03.168 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:29:12.183 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:29:22.197 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:29:32.211 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:29:42.226 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:29:52.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:30:02.253 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:30:02.275 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:29:37.971062
2026-01-22T08:30:02.275 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:30:02.275 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:30:02.276 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:30:11.289 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:30:21.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:30:31.319 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:30:41.334 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:30:51.349 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:31:01.365 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:31:01.388 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:30:38.111758
2026-01-22T08:31:01.388 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:31:01.388 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:31:01.389 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:31:10.403 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:31:20.418 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:31:30.432 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:31:40.446 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:31:50.467 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:32:00.482 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:32:00.503 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:31:38.249850
2026-01-22T08:32:00.503 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:32:00.503 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:32:00.503 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:32:09.516 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:32:19.532 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:32:29.547 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:32:39.562 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:32:49.577 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:32:59.593 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:32:59.615 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:32:38.392240
2026-01-22T08:32:59.615 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:32:59.615 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:32:59.615 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:33:08.627 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:33:18.643 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:33:28.658 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:33:38.673 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:33:48.689 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:33:58.704 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:33:58.725 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:33:38.530940
2026-01-22T08:33:58.726 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:33:58.726 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:33:58.726 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:34:07.739 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:34:17.753 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:34:27.767 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:34:37.783 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:34:47.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:34:57.812 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:34:57.834 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:34:38.671449
2026-01-22T08:34:57.861 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:34:57.861 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:34:57.862 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:35:06.876 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:35:16.891 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:35:26.904 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:35:36.919 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:35:46.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:35:56.947 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:35:56.948 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:35:38.814641
2026-01-22T08:35:56.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:35:56.948 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:35:56.948 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:36:05.962 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:36:15.977 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:36:25.992 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:36:36.006 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:36:46.021 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:36:56.034 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:36:56.051 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:36:38.953592
2026-01-22T08:36:56.052 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:36:56.052 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:36:56.052 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:37:05.063 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:37:15.078 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:37:25.093 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:37:35.106 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:37:45.122 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:37:55.137 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:37:55.160 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:37:39.095536
2026-01-22T08:37:55.160 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:37:55.160 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:37:55.160 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:38:04.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:38:14.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:38:24.201 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:38:34.215 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:38:44.231 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:38:54.245 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:38:54.247 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:38:39.238174
2026-01-22T08:38:54.248 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:38:54.248 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:38:54.248 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:39:03.259 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:39:13.274 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:39:23.290 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:39:33.305 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:39:43.320 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:39:53.336 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:39:53.353 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:39:39.376647
2026-01-22T08:39:53.353 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:39:53.353 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:39:53.354 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:40:02.367 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:40:12.381 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:40:22.395 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:40:32.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:40:42.426 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:40:52.442 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:40:52.463 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:40:39.518401
2026-01-22T08:40:52.463 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:40:52.464 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:40:52.464 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:41:01.477 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:41:11.492 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:41:21.508 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:41:31.523 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:41:41.538 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:41:51.553 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:41:51.570 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:41:39.657905
2026-01-22T08:41:51.570 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:41:51.571 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:41:51.571 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:42:00.584 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:42:10.599 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:42:20.615 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:42:30.630 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:42:40.646 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:42:50.662 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:42:50.684 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:42:39.799194
2026-01-22T08:42:50.685 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:42:50.685 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:42:50.685 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:42:59.698 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:43:09.714 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:43:19.729 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:43:29.745 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:43:39.760 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:43:49.775 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:43:49.796 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:43:39.940165
2026-01-22T08:43:49.796 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:43:49.796 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:43:49.796 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:43:58.808 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:44:08.823 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:44:18.838 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:44:28.853 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:44:38.869 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:44:48.884 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:44:48.902 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:44:40.079251
2026-01-22T08:44:48.902 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:44:48.903 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:44:48.903 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:44:57.916 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:45:07.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:45:17.947 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:45:27.963 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:45:37.978 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:45:47.994 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:45:48.014 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:45:40.220725
2026-01-22T08:45:48.014 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:45:48.014 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:45:48.014 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:45:57.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:46:07.041 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:46:17.055 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:46:27.069 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:46:37.083 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:46:47.098 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:46:47.118 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:46:40.366434
2026-01-22T08:46:47.118 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:46:47.119 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:46:47.119 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:46:56.130 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:47:06.145 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:47:16.160 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:47:26.173 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:47:36.188 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:47:46.203 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:47:46.225 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:47:40.505871
2026-01-22T08:47:46.225 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:47:46.226 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:47:46.226 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:47:55.239 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:48:05.254 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:48:15.270 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:48:25.285 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:48:35.299 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:48:45.314 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:48:45.332 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:48:40.646390
2026-01-22T08:48:45.332 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:48:45.333 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:48:45.333 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:48:54.346 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:49:04.361 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:49:14.377 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:49:24.392 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:49:34.407 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:49:44.422 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:49:44.441 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:49:40.787149
2026-01-22T08:49:44.441 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:49:44.442 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:49:44.442 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:49:53.455 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:50:03.471 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:50:13.488 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:50:23.502 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:50:33.518 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:50:43.532 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:50:43.555 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:50:40.924820
2026-01-22T08:50:43.555 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:50:43.555 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:50:43.555 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:50:52.570 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:51:02.583 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:51:12.597 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:51:22.613 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:51:32.629 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:51:42.643 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:51:42.645 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:51:41.067950
2026-01-22T08:51:42.645 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:51:42.645 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:51:42.646 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:51:51.659 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:52:01.675 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:52:11.691 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:52:21.706 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:52:31.721 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:52:41.736 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:52:41.754 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:52:41.207762
2026-01-22T08:52:41.754 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:52:41.754 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:52:41.755 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:52:50.768 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:53:00.782 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:53:10.797 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:53:20.812 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:53:30.827 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:53:40.842 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:53:40.860 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:52:41.207762
2026-01-22T08:53:40.860 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:53:40.861 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:53:40.861 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:53:49.872 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:53:59.888 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:54:09.902 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:54:19.917 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:54:29.932 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:54:39.948 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:54:39.971 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:53:41.348256
2026-01-22T08:54:39.971 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:54:39.971 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:54:39.972 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:54:48.985 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:54:58.998 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:55:09.014 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:55:19.028 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:55:29.042 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:55:39.056 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:55:39.076 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:54:41.489191
2026-01-22T08:55:39.077 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:55:39.077 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:55:39.077 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:55:48.090 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:55:58.105 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:56:08.119 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:56:18.133 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:56:28.147 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:56:38.161 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:56:38.181 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:55:41.638655
2026-01-22T08:56:38.181 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:56:38.181 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:56:38.181 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:56:47.195 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:56:57.210 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:57:07.224 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:57:17.238 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:57:27.253 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:57:37.267 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:57:37.286 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:56:41.779048
2026-01-22T08:57:37.286 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:57:37.286 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:57:37.287 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:57:46.301 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:57:56.316 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:58:06.332 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:58:16.348 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:58:26.362 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:58:36.377 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:58:36.397 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:57:41.933301
2026-01-22T08:58:36.398 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:58:36.398 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:58:36.398 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:58:45.411 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:58:55.427 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
2026-01-22T08:59:05.441 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 30
2026-01-22T08:59:15.457 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 20
2026-01-22T08:59:25.469 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 10
2026-01-22T08:59:35.484 [INFO] [Poll thread] [schedule_poller.py] [poll()] Poll loop iteration starting
2026-01-22T08:59:35.486 [DEBUG] [Poll thread] [telescope.py] [fetch_lcu_permission()] Got LCU permission = False and LCU permission timestamp = 2026-01-22T08:58:42.072283
2026-01-22T08:59:35.486 [INFO] [Poll thread] [schedule_poller.py] [poll()] The LCU DENIES permission to observe.
2026-01-22T08:59:35.486 [INFO] [Poll thread] [schedule_poller.py] [kill_current_execution()] Killing current execution
2026-01-22T08:59:35.486 [DEBUG] [Poll thread] [schedule_poller.py] [kill_current_execution()] Nothing to kill
2026-01-22T08:59:44.500 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 50
2026-01-22T08:59:54.515 [DEBUG] [Poll thread] [schedule_poller.py] [do_sleep()] Time remaining to next poll = 40
